docker的安装部署和常用命令
查看docker帮助文档地址:https://docs.docker.com/get-docker/
(1)先卸载旧的docker
yum remove docker \ docker-client \ docker-client-latest \ docker-common \ docker-latest \ docker-latest-logrotate \ docker-logrotate \ docker-engine
(2)安装需要的环境
yum install -y yum-utils
(3)设置镜像仓库(默认可能链接不稳定,可以修改其他的镜像仓库)
yum-config-manager \ --add-repo \ https://download.docker.com/linux/centos/docker-ce.repo
(4)安装docker(社区版)
yum install docker-ce docker-ce-cli containerd.io
(5)启动docker服务
systemctl start docker sudo service docker start
(6)导入别人的镜像(先新建目录/home/userapp,再将别人给的镜像上传到userapp下面)
gunzip -c /home/userapp/mp_info.tar.gz | docker load 如果别人的镜像格式是.tar的格式,那个直接导入即可,不用解压缩 docker load -i mp_info.tar
(7)通过镜像名称进行启动(指定端口)
docker run -itd --name mp_info -p 13099:80 mp_info
(8)通过镜像名称停止
docker stop mp_info
(9)docker ps 查不到容器,但是启动容器报该进程已存在,可以使用docker ps -l 来查看容器,然后用docker rm [容器id] 删除该容器
(10)docker安装nginx修改配置文件
进入容器,命令:docker exec -it nginx bash nginx.conf配置文件在 /etc/nginx/ 下面,但是你使用vim nginx.conf 或者vi nginx.conf 会发现vi或者vim命令没有用,解决办法:apt-get update 完成之后 apt-get install vim 此时你就可以自己定制nginx.con文件了,改好配置文件之后重启容器,步骤,先把容器停了 docker stop nginx 然后重启 docker start nginx
(11)将本地的容器修改后发布为新的镜像(镜像存在本地)
docker commit提交容器成为一个新的副本 # 命令和git原理类似 docker commit -m="提交的描述信息" -a="作者" 容器id 目标镜像名:[版本号]
(12)查看已建立的容器的详细信息
docker inspect [ID|容器名]
(13)查看容器日志
docker logs -tf --tail 10 [ID|容器名] -f 一直跟踪日志变化 -t 加时间戳 --tail n 显示最新的n条,n=0显示最新的
(14)查看运行中容器的进程情况
docker top [ID|容器名]
(15) 进入容器(类似于新开控制台)
docker exec -it ID|容器名 /bin/bash
(16)退出容器(容器内有进程运行退出不会停止,除非强制退出)
exit退出并停止容器 Ctrl+p+q只退出容器,不停止容器
(17)重启或者删除容器
docker start 容器ID或容器名称启动容器 docker restart 容器ID或容器名称重新启动容器 docker stop 容器ID或容器名称停止容器 docker kill 容器ID或容器名称强制停止容器 docker rm 容器ID或容器名称删除容器 docker rm -f 容器ID或容器名称强制删除容器 docker rm -f $(docker ps -a -q)删除多个容器
(18)容器中复制文件
docker cp 容器ID:容器内的文件路径 宿主机路径从容器内拷贝文件到宿主机.
(19)docker安装mysql并将配置文件和数据挂载出来
docker run -itd -p 3310:3306 -v /mnt/d/ubuntu/mysql/conf:/etc/mysq1/conf.d -v /mnt/d/ubuntu/mysql/data:/var/1ib/mysq1 -e MYSQL_ROOT_PASSWORD=123456 --name mysql mysql:5.7
或者
其中的\代表换行
-e 表示环境 可以设置密码
-p 表示端口映射
-v 表示数据卷挂载
-d 表示后台运行
v /mnt/d/ubuntu/mysql/conf:/etc/mysq1/conf.d/myconf.cnf mysql的配置文件挂载到conf.d这个目录下面,因为这个目录下面的配置文件会自动合并到mysql的配置文件里面
(20)
安装单机版docker(不连接数据库) docker run -d \ -p 8848:8848 \ -p 9848:9848 \ -e MODE=standalone \ --restart always \ --name nacos nacos/nacos-server