使用docker構(gòu)建容器并上傳鏡像中心
- 拉取基礎(chǔ)鏡像
docker pull hub.c.163.com/nce2/nodejs:0.12.2
- 創(chuàng)建package.json
- 配置npm 啟動(dòng)程序
- 創(chuàng)建Dockerfile
FROM hub.c.163.com/nce2/nodejs:0.12.2
# Create app directory
RUN mkdir -p /home/Service
WORKDIR /home/Service
# Bundle app source
COPY . /home/Service
RUN npm install
EXPOSE 8888
CMD [ "npm", "start" ]
4.創(chuàng)建鏡像
sudo docker build -t 鏡像名稱(chēng) .
5.運(yùn)行容器
docker run -d -p 8888:8888 鏡像id
- 查看docker進(jìn)程
sudo docker ps
- 鏡像提交。
sudo docker commit 8d140852cd5c 20122016214/wlt
- sudo docker commit 鏡像ID+ 倉(cāng)庫(kù)名稱(chēng)
8.登錄
sudo docker login
- username是dockerId注冊(cè)是唯一的認(rèn)證
9.進(jìn)行提交
sudo docker push 20122016214/wlt:latest
- latest為鏡像的名稱(chēng)
- 登錄測(cè)試。
docker 刪除命令
刪除所有未運(yùn)行 Docker 容器
docker rm $(docker ps -a -q)
刪除所有 Docker 鏡像
- 刪除所有未打 tag 的鏡像
docker rmi $(docker images -q | awk '/^<none>/ { print $3 }')
- 刪除所有鏡像
docker rmi $(docker images -q)
- 刪除鏡像
docker rm $(docker ps -qf status=exited)
- 刪除鏡像
sudo docker rm 容器id
- 刪除容器
sudo docker rmi 鏡像id
<strong>
docker 刪除鏡像時(shí),需要?jiǎng)h除其依賴(lài)容器
</strong>
查找鏡像
sudo docker search httpd
- 查詢(xún)結(jié)果
NAME DESCRIPTION STARS OFFICIAL AUTOMATED
httpd The Apache HTTP Server Project 1211 [OK]
hypriot/rpi-busybox-httpd Raspberry Pi compatible Docker Image with ... 37
NAME: 鏡像倉(cāng)庫(kù)的名稱(chēng),DESCRIPTION:鏡像的描述,OFFICIAL:是否docker官方發(fā)布。
使用Dockerfile定制鏡像
- Dockerfile = 修改+ 安裝 + 構(gòu)建 + 操作。
mkdir mynginx
cd mynginx
touch Dockerfile
- Dockerfile的內(nèi)容如下:
FROM nginx
RUN echo '<h1>Hello, Docker!</h1>' > /usr/share/nginx/html/index.html