Ich arbeite mit einem Team von 5 Entwicklern in einem kleinen Unternehmen. Es gibt 3, die hier arbeiten und 2 arbeiten remote. Momentan verwenden wir Assembla mit Trac zur Quellcodeverwaltung. Wir arbeiten an einer ASP.NET MVC-Website. Wir hosten momentan nicht unsere Produktionsumgebung. Ich baue einen BuildServer mit Teamcity !! Ich habe es gerade auf meinem lokal auf meinem Laptop arbeiten. Sollten wir unseren eigenen Buildserver hosten oder etwas anderes bezahlen?Teamcity als Buildserver, Host oder für etwas anderes bezahlen?
Antwort
TeamCity ist ziemlich gut für kleine Geschäfte wie deins. Hosting Ihrer eigenen sollte wirklich nicht schlecht in Bezug auf Setup und Kosten sein. Solange Ihre entfernten Kollegen ohne Probleme darauf zugreifen können und es Ihre Anforderungen erfüllt, sollten Sie es tun.
Ich würde empfehlen, es näher zu Ihrem Versionskontrollserver zu hosten, damit es die Quellen erhalten und Builds schneller durchführen kann. Wenn Sie Ihren eigenen Versionskontrollserver hosten, installieren Sie TeamCity entweder auf demselben Computer (wenn die Hardware dies zulässt) oder in dasselbe Netzwerk. Außerdem müssen Sie Build-Agenten und einen Datenbankserver installieren (da die interne Datenbank möglicherweise nicht über die Leistung und Zuverlässigkeit verfügt). In einem kleinen Laden würde ein eigenständiger Server alles davon verwalten (TeamCity Server + Build Agent + MySQL-Datenbank). Auf lange Sicht wäre es viel billiger, einen Server zu kaufen und selbst zu hosten, als jeden Monat einen Hosting-Provider für einen virtuellen oder dedizierten Server mit begrenzten Ressourcen zu bezahlen. Es würde auch die Aktualisierung vereinfachen, wenn es notwendig wird.
Der TeamCity-Server selbst ist eine Webanwendung, die auf dem Tomcat-Server gehostet wird. Der Zugriff erfolgt über die Weboberfläche vom Browser aus. Wenn Sie eine externe IP-Adresse auf dem Server haben, konfigurieren Sie einfach den Tomcat, um auf diese Adresse zu hören, und TeamCity wird von überall auf der Welt zugänglich sein (vergessen Sie nicht, die Sicherheit zu konfigurieren).
- 1. Etwas anderes als Libcurl
- 2. Etwas anderes als INotifyPropertyChanged?
- 3. IronRuby, IronPython oder etwas anderes?
- 4. WCF Datendienste oder etwas anderes?
- 5. CMake IF (etwas oder etwas anderes)
- 6. Tomcat Fehler? Oder etwas anderes?
- 7. Optionsfeld, Kontrollkästchen oder etwas anderes?
- 8. GWT oder DOJO oder etwas anderes?
- 9. ElasticSearch oder Couchbase oder etwas anderes
- 10. Vlookup oder Hlookup oder etwas anderes?
- 11. Python Dekorateur über etwas anderes als def
- 12. Python - Warum etwas anderes als uuid4() für eindeutige Strings verwenden?
- 13. Alias, mod_rewrite oder etwas anderes für Shared PHP-Skripte?
- 14. Javascript, String-Operation, Regex oder etwas anderes
- 15. Cache-Hit-Ratio für niedrige Postgräte - Datengröße oder etwas anderes?
- 16. symfony2 Sitzungen, Cookies oder etwas völlig anderes?
- 17. Kann ich für Android etwas anderes als Java entwickeln?
- 18. git rebase --editor =/etwas/anderes/als/vim? (für leichteres Quetschen)
- 19. Soll ich System.out.println() oder etwas anderes verwenden?
- 20. Verwenden Sie async/await oder etwas anderes
- 21. NVM oder N oder etwas anderes, um Node.js zu aktualisieren?
- 22. Plugins, Interfaces oder etwas anderes für kundenspezifische Exporte
- 23. PHP Framework oder Template Engine oder etwas anderes?
- 24. Host oder nicht Host?
- 25. Wie überprüft man, ob das gleiche Bild oder ein anderes Bild oder etwas anderes als das Bild angeklickt wird
- 26. Remote-Java-Entwicklung mit Eclipse (oder etwas anderes)?
- 27. Was wäre das, Suche, Login oder etwas anderes?
- 28. Bezahlen mit Stripe oder Braintree in Meteor
- 29. Sollte -dealloc etwas anderes tun, als Speicher freizugeben?
- 30. EF-Migrationen auf dem CI-Buildserver
Ok, ich bin mir nicht sicher, wie jeder von unserem eigenen Netzwerk darauf zugreifen würde? Ich bin ein Entwickler zuerst, es Setup-Typ Sekunde? Die Hälfte unseres Teams arbeitet lokal, der Rest wäre remote? – user154366
CrazyCoder (weiter unten) wurde erweitert, um zu beschreiben, wie dies eingerichtet wird, damit die TeamCity-Webanwendung extern verfügbar ist (auf einer extern verfügbaren IP-Adresse abhören, Sicherheit konfi- gurieren usw.). – Steven
Meine Teams hatten dieses Problem häufig. Sicher, die lokalen Entwickler können auf TC zugreifen, aber die Remote-Leute können nicht. Sie erhalten nur eine Build-Fehler-E-Mail, aber sie können keine weiteren Details erhalten. Dies ist frustrierend und typisch für Unternehmen mit gemischten FTE/Contractor-Entwicklerteams. –