Docker キャプテンは、その分野の専門家であり、Docker の知識を他の人と共有することに情熱を注いでいるコミュニティの選ばれたメンバーです。 「Docker Captains Take 5」は定期的なブログシリーズで、キャプテンを詳しく見て、Dockerの最高のヒントから猫と犬のどちらを好むかまで、同じ幅広い質問をします(個人的には好きです クジラ そして カメこっち)。 今日は、2022年からDockerキャプテンを務めているセバスチャンラミレスにインタビューしています。 彼はForethoughtのスタッフソフトウェアエンジニアであり、ドイツのベルリンを拠点としています。
Dockerを最初に知ったのはいつ/どのようにですか?
数年前、私は開発者のチームを持つ会社で働いていて、サーバーを手動で処理していました。 SSH経由でサーバーに接続し、パッケージをインストールし、手動でファイルを構成します...それは完全に混乱でした。 私たちはたくさんの Snowflakeサーバーを持っていましたが、それは本当に悪いことです。 😅
私はそのプロセスを自動化する方法を見つけようとしていたので、サーバーを削除して、非常に短い時間で最初から再構築することができました。 単純なBashスクリプトから始めて、Ansible、Salt、Chef、Puppetなどのデプロイを処理するパッケージに移動するなど、多くのツールを試しました。
その時点で、代替案の複雑さに少し圧倒されていたとき、私はDockerを発見しました。 私は多くのGitHubリポジトリで多く Dockerfiles
を見てきましたが、それが何であるかはまだわかりませんでした。 私はそれを研究し、それを使い始め、そしてすぐに恋に落ちました。
お気に入りのDockerコマンドは何ですか?
おそらく docker ps
、スタックがすでに稼働しているかどうか、他のコンテナが稼働しているかどうか、エラーのある終了したコンテナがあるかどうか、コンテナが使用するポートなどを常にチェックしています。 私はそれが私が最も頻繁に使用しているコマンドだと感じています。
他の人が知らないかもしれないDockerを操作するための一番のヒントは何ですか?
おそらく、Docker イメージの既定のコマンドを Docker または Docker Compose でオーバーライドできる可能性があります。 また、コマンドを使用して、 sleep infinity
のようにコンテナを存続させることができます。
そして、それをコードのボリュームをホストボリュームとしてマウントすることと組み合わせることができます。
そして、 を使用して docker exec
コンテナーの内部に入り、内部からアプリを実行できます。 このようにして、イメージを再度ビルドすることなく、コードからライブで開発できます。 また、エラーが発生した場合は、それを修正してコマンドを再度実行できます。 sleep infinity
また、エラー後もコンテナが存続することを確認するため、コンテナを再起動することなく、非常に迅速に開発を続行できます。
あなたが行った/見た中で最もクールなDockerデモは何ですか?
私はたくさんのことを見てやってきました! いつも驚かされることの1つは、新しいシステム、新しいデータベース、新しいツールを試すのがいかに簡単かということです。
私は多くのデータベース、SQLとNoSQL、検索エンジン、ジョブキューなどを学び、使用することができました。Dockerは常にその中で重要な役割を果たします。 私が試してみたいほとんどすべてのことについて、Docker Hubに公式イメージがあり、賢明なデフォルト、単純な構成(ほとんどの場合、環境変数のみ)、およびDockerで作業するときに好きになるコンテナのセキュリティと分離の利点があります。
この半年間に取り組んだことで、特に誇りに思っていることは何ですか?
それはおそらくFastAPIになるでしょう! 型の注釈を使用して Web API を構築するための Python フレームワーク。 また、Typer、SQLModel、Asyncerなどの他のオープンソースプロジェクトもあります。
また、他のオープンソースパッケージに貢献し、他の開発者がツールを使用してより効率的になるのに役立つと思われるドキュメントを書いたことを誇りに思っています。 🤓
今年のDockerの最大の発表は何だと思いますか?
私は知りません! Dockerには常にシンプルだが賢いアイデアをもたらす方法があり、次に何が起こるかを楽しみにしています!
Dockerコミュニティに関する来年の個人的な目標は何ですか?
私は長い間Dockerのファンでしたが、開発者がすべてのワークフローを改善し、私たちをより効率的にするのに大いに役立つと感じています。 より多くの開発者がそれを使用する方法、少なくとも基本を学び、それを使って作業を改善することを願っています。
DockerCon 2022で一番見たい講演は何ですか?
たくさんのこと! おそらく、Dockerを使用している開発者からのヒントとコツです。
たとえば、つい最近、Dockerで使用できるLinuxコマンドがあることを発見しました。 sleep infinity
それを発見する前に、私は次のような bash -c “while true; sleep 10; done”
複雑なことをしますが、どちらも同じことを達成しますが、最初のものはとても簡単です! 私はそれが存在することを知りませんでした、そしてそれは開発中に非常に役に立ちます。
他にどんなトリックがあるのか 知りたいです。
遠い未来を見据えて、あなたが最も興奮し、多くの可能性を秘めていると思うテクノロジーは何ですか?
私はプログラミング言語であるPythonが大好きです。 私はそれがますます進化し成熟していると感じており、簡単な方法で高度なアプリケーションを操作したり開発したりするのに非常に便利です。 そしてそれはドッカーで非常にうまく機能します!
急速な火の質問...
パンデミックの間にどのような新しいスキルを習得しましたか?
家を出ずに配達食料品を手に入れる。 私は必ずしもそれを誇りに思っているわけではありません。 😅
猫か犬か?
両方とも! そしてヘビ! 🐍
塩辛い、酸っぱい、甘い?
最初に酸っぱい塩味、次に甘いものをお願いします。
ビーチか山か?
無線LANはありますか?
最もよく使われる絵文字は?
と言い🚀たいのですが、おそらく嘘をついています。 それは間違いなくこれです:😅。