前言
Docker 是一种虚拟化技术,可以透过容器(Container)建立多个虚拟机,也可以将虚拟机存档,方便大量布署。
Docker 安装
在 Ubuntu 安装 Docker 非常简单,请参考官网说明,指令如下:
设定下载仓库(repository):sudo apt-get updatesudo apt-get install apt-transport-https ca-certificates curl gnupg lsb-release
加入 Docker 加密金钥(GPG key):curl -fsSL https://download.docker.com/linux/ubuntu/gpg | sudo gpg --dearmor -o /usr/share/keyrings/docker-archive-keyring.gpg
设定稳定的仓库(repository):echo \ "deb [arch=$(dpkg --print-architecture) signed-by=/usr/share/keyrings/docker-archive-keyring.gpg] https://download.docker.com/linux/ubuntu \ $(lsb_release -cs) stable" | sudo tee /etc/apt/sources.list.d/docker.list > /dev/null
安装容器(Container):sudo apt-get updatesudo apt-get install docker-ce docker-ce-cli containerd.io
测试:执行 hello-world 映像档(image),映像档不存在时,会自动下载,这个映像档只会显示「Hello from Docker!」,即自动结束。sudo docker run hello-world
安装后可以设定由非系统管理者管理虚拟环境,可参考这里,将一般使用者加入docker群组,可免除一直要输入sudo。sudo usermod -aG docker $USERsudo chmod 777 /var/run/docker.sock
登出后再登入后即可。
测试另一个映像档:docker run -d -p 80:80 docker/getting-started
Docker Compose可在单一环境同时启动多个服务,例如网站、资料库、Redis...等,详细说明可参考Docker官网文件,Docker Compose 安装指令如下 :sudo apt install docker-compose
启动 docker-compose:sudo docker-compose up
显示执行中的 container:sudo docker ps
自行建立映像档
要建立映像档,除了应用程式外还须建立Dockfile,Dockfile 可参考这里。
自这里下载範例档,解压缩后,使用 vs code 开启 getting-started-master/app 目录,建立 Dockfile,内容如下:# syntax=docker/dockerfile:1FROM node:12-alpineRUN apk add --no-cache python g++ makeWORKDIR /appCOPY . .RUN yarn install --productionCMD ["node", "src/index.js"]
建立映像档:sudo docker build -t getting-started .
启动映像档:docker run -dp 3000:3000 getting-started
浏览 http://localhost:3000/。