Docker 常用命令总结,坚持就是胜利!
docker 常见命令总结
1 2 3 4 5 6 7 8 9 10 11 12
| # 查看已经安装的镜像 docker images # 查看正在运行的容器 docker ps # 查看已经退出的容器 docker ps -a # 启动容器 docker start <container ID> # 停止容器 docker stop <container ID> # 开启一个容器内部的交互式终端 /bin/bash docker exec -it <container ID> /bin/bash
|
Docker安装MySQL
1 2 3 4 5 6 7 8 9 10 11 12
| docker pull mysql # 将容器的 3306 端口映射到主机的 3306 端口, 容器conf目录和logs目录、data目录都挂载在本地,并设置root密码 root docker run -p 3306:3306 --name mymysql -v $PWD/conf:/etc/mysql/conf.d -v $PWD/logs:/logs -v $PWD/data:/var/lib/mysql -e MYSQL_ROOT_PASSWORD=root -d mysql # 这里会输出容器ID # 进入容器 docker exec -it <container ID> /bin/bash # 登录Mysql mysql -uroot -p # 授权所有权限给root用户,并允许远程连接 GRANT ALL PRIVILEGES ON *.* TO 'root'@'%'; # 刷新权限 flush privileges;
|
Docker安装Tomcat
1 2 3 4 5 6 7 8 9 10 11 12
| # 安装Tomcat docker pull tomcat # 运行容器 # 命令说明 # -p 8080:8080:将容器的 8080 端口映射到主机的 8080 端口。 # -v $PWD/test:/usr/local/tomcat/webapps/test:将主机中当前目录下的 test 挂载到容器的 /test。 docker run --name tomcat -p 8080:8080 -v $PWD/test:/usr/local/tomcat/webapps/test -d tomcat
docker exec -it <container ID> /bin/bash
ls -l mv webapps.dist webapps
|
Docker安装Nginx
1 2 3 4 5 6 7 8 9 10 11 12 13 14
| # 安装nginx docker pull nginx # 查看镜像 docker ps # --name 容器名称 -p 8080:80 端口进行映射,将本地8080端口映射到容器内部的80端口 - 简易启动方式 docker run --name nginx-test -p 8080:80 -d nginx # -v 使用本地配置覆盖docker镜像配置 --net host 参数加上后不会使用容器自己虚拟的网卡,而会使用宿主机自己的IP和端口 docker run \ --name my_nginx \ -d -p 30002:80 --net host\ -v /home/nginx/log:/var/log/nginx \ -v /home/nginx/html:/usr/share/nginx/html \ -v /home/nginx/conf.d:/etc/nginx/conf.d \ nginx
|
常见问题
在安装docker的虚拟机重启后,再次进入会发现docker 容器的状态为退出 docker ps -a
,这个时候有两个选择
- 删除容器
docker rm <container ID>
, 如果有容器中的数据很重要可以保存为images docker commit <container ID>
- 重启docker容器
docker start <container ID>