目的:记录一下学习docker部署简单项目的思路node
思路:docker
此处借用一下官方的逻辑图~~~~shell
环境:CentOS 7npm
// 使用yum安装docker 此处因使用的我的服务器,是最高权限 sudo yum install docker
使用docker -v或者docker能够检测是否安装成功服务器
ps: 关于环境的相关配置,能够自行百度或者google,有大量教程,通常安装失败,都是由于权限的问题(我所遇到的)app
建立一个简单的文件,主要目录以下学习
`-- your-app-name/ |-- src/ `-- app.js // 随便写一些什么 `-- Dockerfile (we will create this in the following steps)
咱们主要关注点是对Dockerfile文件的配置ui
# 拉取node镜像源,若是本地没有,会自动从docker hub进行拉取 FROM node:latest # 执行命令,建立文件夹 此处路径其实不用进行建立 # 在下一步的copy时,若是没有此文件,会自动在路径下建立文件 RUN mkdir -p /home/nodeDemojs # 复制文件 复制src下的文件到 /home/nodeDemojs COPY ./src /home/nodeDemojs # 容器启动时执行的命令,相似npm run start CMD ["node", "/home/nodeDemojs/app.js"]
执行docker buildthis
docker build -t 镜像名 . // 镜像名后能够跟版本号,格式如 镜像名:v1.0 // 最后的 . 要特别注意,不能呢个省略,这个做用是绑定咱们所执行的上线文
执行docker rungoogle
使用此指令,能够建立一个容器并运行
docker run -d -p 3000:3000 docker-demo:v1.0
查看镜像
docker images
删除镜像
docker rmi 镜像ID
查看运行的容器
docker ps
中止容器
docker stop 容器ID
检测docker启动状态
sudo systemctl status docker.service
启动docker
sudo systemctl start docker.service // 执行完上述指令后,再次查看docker当前的状态,执行sudo systemctl status docker.service~~~~
重启docker
sudo systemctl restart docker.service