タグ

2021年2月23日のブックマーク (2件)

  • ENTRYPOINTは「必ず実行」、CMDは「(デフォルトの)引数」 ‣ Pocketstudio.Net

    CMD と ENTRYPOINT の違い 先日の勉強会で Dockerfile における「CMD」と「ENTRYPOINT」の使い分けについて質問がありました。結論からしますとタイトル通り、ENTRYPOINTは「必ず実行」、CMDは「(デフォルトの)引数」なのですが、初学者にとっては分かりづらいところ。デモを交えながら、ブログでも改めて説明します。 (違いについては、既にいろいろなトコロでも言及されていますが、初学者向けにまとめました。私自身、初めて両者に触れた時は、全く理解できなかった!という思いもあります) コンテナ実行時の挙動と「CMD」命令 まず前提として、次のコマンドを実行したら、なぜ bash が起動するか分かりますか。コンテナ実行後にプロセスを確認しますと、/bin/bash がコンテナ内で PID 1 として動いています。 $ docker container run -

    ENTRYPOINTは「必ず実行」、CMDは「(デフォルトの)引数」 ‣ Pocketstudio.Net
  • Big Sky :: golang 1.5 の internal パッケージの使い方。

    golang 1.5 がリリースされました。 Go 1.5 is released - The Go Blog Go 1.5 is released 19 August 2015 Today the Go project is proud to release Go 1.5, the sixth major s... https://blog.golang.org/go1.5 内容かなり盛りだくさんです。その中でも目を引くのが internal パッケージです。 golang ではパッケージ内のシンボルを外部から参照可能にする為に名称の先頭を大文字にする必要があります。しかしながら、そうしてしまうと無関係のパッケージからも参照可能になってしまう問題がありました。 ライブラリパッケージを作っていて内部の共通関数を切り出したい、しかしながらライブラリ以外の物からは使わせたくない、そういう場合に

    Big Sky :: golang 1.5 の internal パッケージの使い方。