質問をすることでしか得られない、回答やアドバイスがある。

15分調べてもわからないことは、質問しよう!

新規登録して質問してみよう
ただいま回答率
85.48%
docker-compose

docker-composeとは、複数のコンテナで構成されるサービスを提供する手順を自動的し管理を簡単にするツール。composeファイルを使用しコマンド1回で設定した全サービスを作成・起動することが可能です。

Docker

Dockerは、Docker社が開発したオープンソースのコンテナー管理ソフトウェアの1つです

Q&A

解決済

2回答

10396閲覧

docker build -t でnoneイメージが作成される

xxyyxx

総合スコア40

docker-compose

docker-composeとは、複数のコンテナで構成されるサービスを提供する手順を自動的し管理を簡単にするツール。composeファイルを使用しコマンド1回で設定した全サービスを作成・起動することが可能です。

Docker

Dockerは、Docker社が開発したオープンソースのコンテナー管理ソフトウェアの1つです

0グッド

0クリップ

投稿2018/07/27 03:06

編集2018/07/27 06:40

Dockerの docker build -t xxxx . コマンドについて質問です。

先日、コンテナAを作成しました。
ちょっと理由があって、そのコンテナAをKitematicから削除しました。
念の為コマンド(docker ps -a)からも確認し削除の確認。
イメージも削除しました。(docker rmi {IMAGE ID})

コンテナAを作成した時と同じDockerfileを元に新たに同一の名前をdocker buildしたところ、
イメージのREPOSITORYTAG<none>になってしまっています。。

docker tagコマンドで名前を付け直しても、
docker ps -aから確認できるコンテナのIMAGEにはそのイメージのIDが記載してあり、docker tagで付け直した名前が入ってくれず困っています。

なんどdocker build -t {任意の名前}でやっても作成されるイメージの名前が<none>になってしまいます。

イメージの削除とコンテナの削除は、docker rm/rmiでやっています。
現在noneになってしまったイメージや、不要なコンテナは一応全て削除しているつもりです。

何かキャッシュとか、そういう関係なのか原因が掴めず困っています。
わかる方いましたらご教示よろしくお願いします!

追記

上記の問題と関連して、例えば、
コンテナAをbuild&run
コンテナAと同じDockerfileを元にコンテナBを作成し、run

同じportだが、同時に起動させない場合、前者のみ動いて後者が動かないこともわかりました。

気になる質問をクリップする

クリップした質問は、後からいつでもMYページで確認できます。

またクリップした質問に回答があった際、通知やメールを受け取ることができます。

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

guest

回答2

0

ベストアンサー

Dockerfileに書いたすべてのタスクは完了しましたか?
一度ログを確認してみてください。

RUNコマンド内に終了コード0以外を返すヤツが混入している場合、
以後の処理をすべて停止させ、タグが<none>のゴミイメージを出力して終了する仕様だったかと思います。

投稿2018/07/27 06:43

miyabi-sun

総合スコア21158

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

0

もしかして?

docker build -t {任意の名前}

だと、Dockerの イメージ名:タグ のフォーマットではないため、名前がついていないのかもしれません。

試しに docker build -t '{任意の名前}:{任意のタグ番号orタグ名}' でビルドしてみてはどうでしょう?

  • docker build -t 'mona:0.0.1'
  • docker build -t 'mona:omae'
  • docker build -t 'saitama/mona:0.0.1-omae'

参考資料

docker build | Docker Documentation

--tag , -t Name and optionally a tag in the ‘name:tag’ format

投稿2018/07/27 05:45

編集2018/07/27 05:47
manzyun

総合スコア2244

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

miyabi-sun

2018/07/27 05:51

タグがない場合って勝手に`:latest`が補われませんでしたっけ? `docker build`コマンドの末尾のドット入力忘れが原因のような気もしますが、 ドットの入力忘れ時は`"docker build" requires exactly 1 argument.`と叱られるはずであり、 原因に関してはよくわかりません。
manzyun

2018/07/27 05:56

おっ。言われてみればどのDockerfileをビルドしたのかという指定が抜けてますね。 xxyyxxさん、まず僕の回答本文より miyabi-sunさんのコメントの内容の検証をおすすめします。
xxyyxx

2018/07/27 06:39

回答ありがとうございます! 末尾、カレントディレクトリにあるDockerfileの指定は一応しているのです... 質問の記述ミスで申し訳ないのですが、、
xxyyxx

2018/07/27 06:43

タグの指定も`xxxx:xxxx`みたいに指定したりもしてみたのですが、うまくいかず.... 私の方もタグ指定なければlatestになる認識で、最初はタグの指定していませんでした。
guest

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

15分調べてもわからないことは
teratailで質問しよう!

ただいまの回答率
85.48%

質問をまとめることで
思考を整理して素早く解決

テンプレート機能で
簡単に質問をまとめる

質問する

関連した質問