LoginSignup
0
0

More than 3 years have passed since last update.

Docker buildできない際の原因【echoコマンド】

Last updated at Posted at 2021-03-05

前提

ホストOS:Windows(touchコマンドが使えない)

起こったこと

下記イメージを作ろうとしたところ…

Dockerfile
FROM ubuntu:latest
RUN touch hoge
$docker build .

エラーがでました。

failed to solve with frontend dockerfile.v0: failed to create LLB definition: dockerfile parse error line 1: unknown instruction: 
��F R O M

原因

Dockerfileのファイルを作成する際に、
WindowsOSのためtouchコマンドが使えず、
新規ファイル作成の際、echoコマンドを使っていましたが、
その使い方がNGでした。

具体的には下記がNG 

echo "" > Dockerfile

理屈は
①Dockerfileに空の文字列を挿入する。
②Dockerfileがないので空の新規ファイルが作られる。

なんですが、echoコマンドで出力すると、デフォルトで出力文字の最後が改行されるようで
それが原因なのか微妙(入力して修正するので)ですが、
-nオプションをつけると解決しました。

echo -n > Dockerfile
docker build .

原因曖昧であれなのですが、、
とにかく、echo "" > Dockerfileという書き方は使わないようにします。

参考:echoコマンドの詳細まとめました【Linuxコマンド集】

0
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
0
0