官网安装链接
搜过一些复杂详细的教程,但是没有安装过Docker,直接按照官网很快顺利的安装完成了。
以下按照官网的步骤解释一下
sudo apt-get remove docker docker-engine docker.io containerd runc
卸载docker时,存储在/var/lib/docker/中的图像、容器、卷和网络不会自动删除
sudo apt-get update
sudo apt-get install \ca-certificates \curl \gnupg \lsb-release
sudo mkdir -p /etc/apt/keyrings
curl -fsSL https://download.docker.com/linux/ubuntu/gpg | sudo gpg --dearmor -o /etc/apt/keyrings/docker.gpg
echo \"deb [arch=$(dpkg --print-architecture) signed-by=/etc/apt/keyrings/docker.gpg] https://download.docker.com/linux/ubuntu \$(lsb_release -cs) stable" | sudo tee /etc/apt/sources.list.d/docker.list > /dev/null
sudo apt-get update
sudo apt-get install docker-ce docker-ce-cli containerd.io docker-compose-plugin
sudo docker run hello-world
docker pull nginx
docker images
/home/andy/
新建Web目录(放多个Web项目),再新建nginx目录,其中dist
是vue-cli
编译项目生成的文件夹直接拖入的。nginx 和docker
的配置其实就是之前没用Docker部署的nginx中nginx.conf
中的内容(根据自己的文件修改)
//简化版server {listen 8080; #配置访问时的端口号server_name 192.168.80.129; #修改为docker服务宿主机的ipcharset utf-8;client_max_body_size 75M; #影响post文件的最大大小location / { #配置uWSGI服务器root /usr/share/nginx/html;index index.html;add_header 'Access-Control-Allow-Origin' '*';}}
FROM nginx
MAINTAINER andy
RUN rm /etc/nginx/conf.d/default.conf
ADD default.conf /etc/nginx/conf.d/
COPY dist/ /usr/share/nginx/html/
自定义构建镜像的时候基于
Dockerfile
来构建。
FROM nginx
命令的意思该镜像是基于 nginx:latest镜像而构建的。
MAINTAINER andy
镜像维护者姓名或邮箱地址。
RUN rm /etc/nginx/conf.d/default.conf
删除原来的nginx配置文件
ADD default.conf /etc/nginx/conf.d/
将当前目录下的默认配置文件复制到原来目录下
COPY dist/ /usr/share/nginx/html/
命令的意思是将项目根目录下dist
文件夹下的所有文件复制到镜像中/usr/share/nginx/html/
目录下。
sudo docker build -t pvcal .
执行成功
root@ubuntu:/home/andy/Web/nginx# sudo docker build -t pvcal .
Sending build context to Docker daemon 3.215MB
Step 1/5 : FROM nginx---> 88736fe82739
Step 2/5 : MAINTAINER andy---> Running in 97341a1ac29e
Removing intermediate container 97341a1ac29e---> 0ccbdef5db5b
Step 3/5 : RUN rm /etc/nginx/conf.d/default.conf---> Running in 5791b2eea9e3
Removing intermediate container 5791b2eea9e3---> f550ba3ce560
Step 4/5 : ADD default.conf /etc/nginx/conf.d/---> d161248c35d1
Step 5/5 : COPY dist/ /usr/share/nginx/html/---> 6ba8ca4542fa
Successfully built 6ba8ca4542fa
Successfully tagged pvcal:latest
sudo docker run -d -p 【主机端口】:【容器端口】 --name 【容器名】【镜像名】
-p : 端口映射 格式为[主机端口:容器端口]
-d : 后台模式运行
-name : 给容器起一个名字
sudo docker run -d -p 8080:80 --name 6ba8ca4542fa pvcal
列出正在运行的容器
docker ps
显示所有的容器,包括未运行的
docker ps -a
停止一个正在运行的容器:
docker stop 8959823ce1b7 //docker stop 容器ID或容器名
删除容器(配合停止容器删除)
docker rm 8959823ce1b7
重启容器
docker restart 8959823ce1b7 //docker restart 容器ID或容器名:不管容器是否启动,直接重启容器
docker启动命令,docker重启命令,docker关闭命令
启动systemctl start docker
守护进程重启sudo systemctl daemon-reload
重启docker服务systemctl restart docker
重启docker服务sudo service docker restart
关闭dockerservice docker stop
关闭dockersystemctl stop docker