一些Docker常用命令,下载镜像和创建容器,Centos开启自启docker和对应mariadb(容器)

觉得有帮助的同学可以点个赞!传递给更多人!

Docker为什么比VM快?

Docker有着比虚拟机更少的抽象层。
docker利用的是宿主机的内核(linux内核),vm需要是整个系统。

Docker的常用命令

docker启动,关闭,重启
# docker 启动命令
systemctl start docker

# docker 重启命令
systemctl restart docker

# docker 查看状态命令
systemctl status docker
docker信息
docker version        #显示docker的版本信息
docker info           #显示docker的系统信息,包括镜像和容器的数量
docker 命令 --help     #帮助命令

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

下载镜像
docker pull  #下载镜像
docker pull 镜像名:版本号  #下载指定版本

在这里插入图片描述

管理镜像
docker images # 显示所有本地镜像
docker rm  IMAGE_ID # 删除镜像 
docker rm -f $(docker ps -aq IMAGE_ID) # 删除aq的全部镜像

在这里插入图片描述

新建容器并启动
docker run【可选参数】image
# 或,这里的启动命令建议参考镜像的介绍页上的命令
docker run --name 容器名称 容器名称:容器版本
# 参数说明
--name="Name"    容器名字tomcat01 tomcat02,用来区分容器
-d                           后台方式运行
-it                           使用交互方式运行,进入容器查看内容
-p                           指定容器的端口-p 8080:8080
# -p主机端口:容器端口(常用)
-P # 随机指定端口
exit  #  退出容器
列出所有的运行的容器
docker ps # 列出当前正在运行的容器
-a      # 列出当前正在运行的容器+带出历史运行过的容器
-n=?#显示最近创建的容器
启动和停止容器的操作
docker start 客器id
docker restart 容id
docker stop 容器id
docker kill 容器id
查看日志
docker logs -f -t --tail n 容器id 
查看元数据
docker inspect id
从容器内拷贝文件到主机上
docker cp 容器id:容器内路径 目标主机路径

docker进入容器

docker exec -it 容器id bash

centos开机自启docker

# 设置开机启动
systemctl enable docker.service

# 关闭开机启动
systemctl disable docker.service

docker容器设置开机自动启动

# 启动时加--restart=always
# 这里举例开机自启mariadb
docker run -d --restart=always -p 3307:3306 -e MYSQL_ROOT_PASSWORD=你的密码 -v /home/disk_sql/mariadb_data/data:/var/lib/mysql -v /home/disk_sql/mariadb_data/conf/my.cnf:/etc/mysql/my.cnf --name mariadb_ubuntu 0a2fe61c51d1
# 如果已经启动的项目,则使用update更新
docker update --restart=always 容器name/id

docker启动mariadb并挂载目录实现将数据库的存储位置设置到其他磁盘

# 这里我使用了配置文件cnf;3307:3306 3307是外部端口。并且利用目录挂载实现将数据库的存储位置挂载到其他磁盘。
docker run -d -p 3307:3306 -e MYSQL_ROOT_PASSWORD=输入你的密码 -v /home/disk_sql/mariadb_data/data:/var/lib/mysql -v /home/disk_sql/mariadb_data/conf/my.cnf:/etc/mysql/my.cnf --name mariadb_ubuntu 0a2fe61c51d1

在这里插入图片描述

解决docker数据库时间不正确(因为容器内需要更改时区)

# a32029a14f3f为容器id
docker cp /usr/share/zoneinfo/Asia/Shanghai a32029a14f3f:/etc/localtime
  • 2
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

Franciz小测测

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值