Docker : Dockerfile を利用する2019/02/19 |
Dockerfile を利用して Docker イメージを作成し Docker コンテナーを実行します。
Dockerfile には Docker コンテナーの構成内容をまとめて記述するため、構成管理にも役立ちます。 |
|
[1] | 例として、IIS のインストールと起動を行う Dockerfile を作成します。 |
PS C:\Users\Administrator> mkdir docker-test PS C:\Users\Administrator\docker-test> cd docker-test PS C:\Users\Administrator\docker-test> $str_file = @" FROM mcr.microsoft.com/windows/servercore:1809 MAINTAINER ServerWorld <admin@srv.world> RUN dism.exe /online /enable-feature /all /featurename:iis-webserver /NoRestart RUN echo Dockerfile test example > C:\inetpub\wwwroot\index.html EXPOSE 80 CMD [ "cmd" ] "@ PS C:\Users\Administrator\docker-test> $str_file | Out-File Dockerfile -Encoding Default # イメージのビルド ⇒ docker build -t [イメージ名]:[タグ] . PS C:\Users\Administrator\docker-test> docker build -t srv.world/iis-server:latest . Sending build context to Docker daemon 2.048kB Step 1/6 : FROM mcr.microsoft.com/windows/servercore:1809 ---> 5c1f582f60a9 Step 2/6 : MAINTAINER ServerWorld <admin@srv.world> ---> Running in 48d196707126 Removing intermediate container 48d196707126 ---> e6345d98e44b Step 3/6 : RUN dism.exe /online /enable-feature /all /featurename:iis-webserver /NoRestart ---> Running in 8435c833b7c6 ..... ..... Successfully built d0b43de1e6a4 Successfully tagged srv.world/iis-server:latestPS C:\Users\Administrator\docker-test> docker images REPOSITORY TAG IMAGE ID CREATED SIZE srv.world/iis-server latest d0b43de1e6a4 About a minute ago 5.32GB mcr.microsoft.com/windows/servercore 1809 5c1f582f60a9 12 days ago 5.12GB # バックグラウンドでコンテナーを起動 PS C:\Users\Administrator\docker-test> docker run -t -d -p 8081:80 srv.world/iis-server ebd915020c61c0f0ed21b4a277ed14eb4e8eb1d863bfd7c42136ffcd1343a70fPS C:\Users\Administrator\docker-test> docker ps CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NA MES ebd915020c61 srv.world/iis-server "cmd" 9 seconds ago Up 8 seconds 0.0.0.0:8081->80/tcp nervous_hypatia # アクセス確認 PS C:\Users\Administrator\docker-test> curl.exe localhost:8081 Dockerfile test example |
Sponsored Link |