偉大なツール、習得が難しい。
あなたはその製品でどんなビジネス上の問題を解決していますか?どのようなメリットが実現しましたか?
開発環境からステージングやプロダクションにアプリケーションを移動するときに問題があった。開発環境は、異なるOSや異なるソフトウェアバージョンを使用していましたが、通常は他のプロジェクトで使用されていた設定やバージョンによって汚染されていました。 Dockerの採用以来、展開のライフサイクルはより予測可能になり、自動化と進化が容易になりました。
何が嫌いですか?
学習曲線はいくぶん難しく、Windowsの非Proバージョンなど、異なるホストマシン上での動作の違いはまだあります。新規ユーザーはマシン上にDockerをセットアップするのに苦労する傾向があり、通常の開発用ローカルサーバーの代わりにDockerを使用する方法を理解しています。時にはそれが何を意味するのか誤解して、「ハックな」使用と不満を招き、潜在的なユーザーを快適ゾーンに戻すことができます。
何が一番好きですか?
アプリケーションサーバーの標準環境を定義し、共有、テスト、および展開が容易な機能作成と命名されたボリュームを利用したライフサイクルの容易さ統合ツール、クラウドアプリケーションサービス、アプリケーションコンテナ管理、品質コンプライアンスツールなど、継続的な価値を付加することで、多くのサードパーティのツールやサービスを見つけることができます。
製品を検討している他の人への推奨事項
Web開発では、yaml構成を読み込んでコンテナの相互作用を把握できるため、ドッカーの作成で簡単に使用できます。パラメータを変更して何が起こったのかを簡単に実験できます。ボリュームの仕組み、特に名前付きボリューム、およびサービスのリンクを理解することで、このツールのシンプルで生産的な使用を簡単に開始できます。アプリケーションがステートレスでない場合、スケーラブルなインフラストラクチャにアプリを簡単にデプロイする機会はありません。これは、アプリをコンテナとして管理する大きなメリットの1つです。
続きを開く
Great tool, difficult to master.
What business problems are you solving with the product? What benefits have you realized?
Used to have problems when moving an app from the development environment to the staging and production ones. The development environment used to have a different OS or just different software versions, and usually polluted by configurations/versions used for others projects.
Since the adoption of Docker the deployment life-cycle became more predictable, easier to automate and evolve.
What do you dislike?
Learning curve is somehow hard, and there are still differences on how it runs on different host machines, like non-Pro versions of Windows.
New users tend to struggle to set-up Docker on their machine and understand how to use it as replacement of their usual development local server.
Sometimes misunderstanding what it is meant for can lead to "hackish" use and dissatisfaction, bouncing potential users back to their comfort zone.
What do you like best?
The ability to define a standard environment for my application server, easy to share, test and deploy.
Even easier life cycle using compose and getting advantage of named volumes.
Now it is widespread enough to find many third party tools and services that works with it, adding more value on top, such as: continue integration tools, cloud application services, application container management and quality compliance tools.
Recommendations to others considering the product
For web development, is easier to start using it with docker-compose, as it allows to grasp the interactions of containers by reading the yaml configuration and you can easily play with it, changing the parameters and experiment what happens.
Understanding how volumes works, especially named volumes, and service linking, will make it easier to begin making simple yet productive use of this tool.
If your application is not stateless, you won't have the opportunity to simply deploy your app in a scalable infrastructure, which is one of the great advantages of managing apps as containers.
続きを開く