一、安裝(參考https://docs.docker.com/install/linux/docker-ce/ubuntu/)javascript
1)Uninstall old versionsjava
sudo apt-get remove docker docker-engine docker.io containerd runc
2)Install using the repositorynode
a.Update the apt
package index:linux
sudo apt-get update
b.Install packages to allow apt
to use a repository over HTTPS:docker
sudo apt-get install apt-transport-https ca-certificates curl gnupg-agent software-properties-common
c.Add Docker’s official GPG key:ubuntu
curl -fsSL https://download.docker.com/linux/ubuntu/gpg | sudo apt-key add -
Verify that you now have the key with the fingerprint 9DC8 5822 9FC7 DD38 854A E2D8 8D81 803C 0EBF CD88
, by searching for the last 8 characters of the fingerprint.bash
sudo apt-key fingerprint 0EBFCD88
d. set up the stable repositoryapp
sudo add-apt-repository \ "deb [arch=amd64] https://download.docker.com/linux/ubuntu \ $(lsb_release -cs) \ stable"
3)INSTALL DOCKER ENGINE - COMMUNITYcurl
sudo apt-get update
sudo apt-get install docker-ce docker-ce-cli containerd.io
sudo docker run hello-world
二、建立一個簡單的Node.js應用ui
1)編寫app.js
const http = require('http'); const os = require('os'); console.log("Kubia server starting..."); var handler = function(request, response) { console.log("Received request from " + request.connection.remoteAddress); response.writeHead(200); response.end("You've hit " + os.hostname() + "\n"); }; var www = http.createServer(handler); www.listen(8080);
2)在app.js同目錄下建立Dockerfile
FROM node:7 ADD app.js /app.js ENTRYPOINT ["node", "app.js"]
3)構建容器鏡像
sudo docker build -t kubia .
4)列出本地存儲的鏡像
sudo docker images
5)運行容器鏡像
sudo docker run --name kubia-container -p 8080:8080 -d kubia
6)訪問應用
curl localhost:8080
7)列出全部運行中的容器
sudo docker ps
8)獲取容器更多信息
sudo docker inspect kubia-container
9)在容器內部運行Shell
sudo docker exec -it kubia-container bash
10)退出容器
exit
11)中止和刪除容器
sudo docker stop kubia-container
sudo docker rm kubia-container
12)向鏡像倉庫推送鏡像
a.註冊Docker Hub ID
b.給鏡像添加額外標籤
sudo docker tag kubia 使用本身的Docker Hub ID/kubia
c.向Docker Hub推送鏡像
sudo docker push 使用本身的Docker Hub ID/kubia