準備
# 新建一個用於構建鏡像的文件夾,把全部須要用到的文件放到新建文件夾中
cd ~ && mkdir test
# 新建或拷貝要打包到鏡像中的文件,(如下內容爲筆者本身測試文件)
touch test.sh
echo "this is a test shell" > test.sh
#新建Dockerfile
touch Dockerfile
# 準備工做完成...
書寫Dockerfile
#基礎鏡像
FROM ubuntu:latest
#貢獻者
MAINTAINER wanglihui "lihui.wang@jingli.tech"
#初始化容器環境
RUN mkdir /home/www
RUN apt-get update
#此處能夠經過RUN安裝鏡像依賴
#RUN apt-get install -y nodejs
#RUN apt-get install -y npm
#RUN apt-get install -y git
ADD ./test.sh /home/www/
#能夠添加系統可以識別的打包格式文件,會自動解壓到相關目錄
#ADD ./test.tar.gz /home/www/
#WORKDIR相似於linux上的cd 可以切換工做目錄
WORKDIR /home/www/
#啓動容器時執行命令
CMD ["sh", "test.sh"]
#對外暴漏端口號
#EXPOSE 8080
構建鏡像
# -t用於指定鏡像tag,格式是 owner:鏡像名稱
docker build -t wanglihui:test test/
使用鏡像
docker run wanglihui:test
#能夠看到控制檯輸出了 this is a test shell
其餘經常使用命令
1. docker run
配合docker run 經常使用參數爲
-p綁定端口號 -p 外部端口號:內部端口
--link 連接兩個容器
--env key=value 注入容器變量
2. docker ps 查看正在運行的容器 -a 查看全部容器
3. docker images --list 全部鏡像
4. docker start 容器ID docker stop 容器ID