Docker的安装与使用

在这里插入图片描述

卸载旧版本

yum remove docker \
			docker-client \ 
			docker-client-latest \ 
			docker-common \ 
			docker-latest \ 
			docker-latest-logrotate \ 
			docker-logrotate \ 
			docker-selinux \ 
			docker-engine-selinux \ 
			docker-engine

安装依赖包

yum install -y yum-utils device-mapper-persistent-data lvm2

设置stable镜像仓库

yum-config-manager --add-repo https://download.docker.com/linux/centos/docker-ce.repo
或
yum-config-manager --add-repo http://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repo

更新yum软件包索引

yum makecache fast

yum安装docker

yum install docker-ce docker-ce-cli containerd.io -y

启动docker服务

systemctl start docker

设置开机自动启动

systemctl enable docker

查看docker状态

systemctl status docker

docker-compose

Docker输出详情介绍

docker ps

CONTAINER ID: 容器 ID。

IMAGE: 使用的镜像。

COMMAND: 启动容器时运行的命令。

CREATED: 容器的创建时间。

STATUS: 容器状态。

状态有7种:

  • created(已创建)
  • restarting(重启中)
  • running 或 Up(运行中)
  • removing(迁移中)
  • paused(暂停)
  • exited(停止)
  • dead(死亡)

PORTS: 容器的端口信息和使用的连接类型(tcp\udp)。

NAMES: 自动分配的容器名称。

Docker基础命令

启动docker

systemctl start docker

关闭docker

systemctl stop docker

重启docker

systemctl restart docker

查看docker运行状态

systemctl status docker  #如果是在运行中,会看到绿色的active

查看docker版本号信息

docker version

查看docker详细信息

docker info

docker帮助命令

docker --help
#查看pull的参数
docker pull --help

Docker

docker ps -a -q //查看所有容器ID
docker stop $(docker ps -a -q)

Docker镜像命令

查看自己服务器中docker镜像列表

docker images

搜索镜像

docker search 镜像名
docker search --filter=STARS=9000 mysql 搜索 STARS >9000的 mysql 镜像

拉取镜像

不加tag(版本号)即拉取docker仓库中,该镜像的最新版本latest

加tag则是拉取指定版本

docker pull 镜像名
docker pull 镜像名:Tag

运行镜像

docker run 镜像名
docker run 镜像名:Tag

删除镜像

docker rmi -f 镜像名/镜像ID    #删除一个
docker rmi -f 镜像名/镜像ID 镜像名/镜像ID 镜像名/镜像ID   #删除多个,用空格隔开
docker rmi -f $(docker images -aq)   #删除全部镜像,-a:显示全部,-q只显示ID

Docker清理命令

杀死所有正在运行的容器

docker kill $(docker ps -a -q)

删除所有已经停止的容器

docker rm $(dcoker ps -a-q)

删除所有未打dangling标签的镜像

docker rmi $(docker images -q -f dangling=true)

删除所有镜像

docker rmi $(docker images -q)

强制删除 无法删除的镜像

docker rmi -f <IMAGE_ID>
docker rmi -f $(docker images -q)
~/.bash_aliases

杀死所有正在运行的容器
alias dockerkill='docker kill $(docker ps -a -q)'
删除所有已经停止的容器
alias dockercleanc='dcoker rm $(dcoker ps -a-q)'
删除所有未打标签的镜像
alias dockercleani='docker rmi $(docker images -q -f dangling=true)'
删除所有已经停止的容器和未打标签的镜像
alias dockerclean='dockercleanc || true && dockercleani'

Docker安装Nginx

docker检索nginx可用版本镜像

$ docker search  nginx

取最新版的Nginx镜像

$ docker pull nginx:latest

查看本地镜像

$ docker images

运行容器

$ docker run --name nginx-test -p 8080:80 -d nginx

参数说明:

  • –name nginx-test:容器名称。
  • -p 8080:80:端口进行映射,将本地8080端口映射到容器内部的80端口。
  • -d nginx:设置容器在后台一直运行。

安装成功

通过浏览器直接访问8080端口的nginx服务

Docker与Mysql

查看下Mysql运行名称

#docker ps

进入docker数据库

docker exec -it 【docker容器名称】 mysql -u【数据库帐号】 -p【数据库密码】
docker exec -it tele-db mysql -utele -ptele@123456

备份docker数据库

docker exec -it 【docker容器名称/ID】 mysqldump -u【数据库帐号】 -p【数据库密码】【数据库名称】 >/opt/sql_bak/数据库名.sql【导出库表路径】
docker exec -it tele-db mysqldump -uroot -ptele@123456  criminalv60 < /opt/criminalv60.sql

导入docker数据库

方法1:

先将文件导入到容器
#docker cp **.sql【容器名】:/root/
进入容器
#docker exec -it 【容器名/ID】sh
将文件导入数据库
#mysql -uroot -p 【数据库名】<***.sql

方法2:

docker exec -i 【docker容器名称】 mysql -u【数据库帐号】 -p【数据库密码】 【数据库名】<【本地数据表路径】
docker exec -i tele-db mysql -utele -ptele@123456 criminalv60 < criminalv60.sql

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值