Docker入門

一、安裝(參考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
相關文章
相關標籤/搜索