Docker快速入门(二)

一、Docker常用的命令

1、启动/重启Docker

systemctl start docker/systemctl restart docker
修改配置文件后重启docker
systemctl daemon-reload
systemctl restart docker

2、停止Docker

systemctl stop docker

二、镜像相关命令

1、查询本机中的所有镜像

docker images

2、搜索Docker hub上面的镜像

# 普通搜索,以Tomcat为例
docker search tomcat
# 搜索star大于50的镜像实例
docker search -s 50 tomcat

3、从Docker Hub上面下载镜像

# 以下载tomcat为例
docker pull tomcat[:version]

4、删除本地的镜像

# 以删除tomcat为例
docker rmi tomcat/镜像id
# 通过镜像ID删除
docker rmi -f 镜像ID
# 通过镜像ID删除多个
docker rmi -f 镜像名1:TAG 镜像名2:TAG 
# 删除全部
# docker images -qa : 获取所有镜像ID
docker rmi -f $(docker images -qa)

三、容器相关的命令

1、查看当前Docker 容器

docker ps -a     --参数
# 列出当前正在运行的以及历史上运行过的
-a
# 显示最近创建的容器
-l
# 显示最近创建的N个容器
-n
# 静默模式,只显示容器编号
-q
# 不截断输出
--no-trunc

2、启动/重启容器

docker start 容器ID或容器name
或
docker restart 容器ID或容器name(重启)

3、停止容器

docker stop 容器ID或容器name
或
docker kill 容器ID或容器name(强制停止)

4、删除容器

# 删除已经停止的容器
docker rm 容器ID或容器name 
# 强制删除已经停止或正在运行的容器
docker rm -f  容器ID或容器name 
一次性删除所有正在运行的容器
docker rm -f $(docker ps -qa)

5、进入容器

docker exec -it 容器id/容器名称 bash

6、运行镜像,启动容器

docker run --name 镜像名称

四、mysql镜像启动和挂载说明(详解)

1、拉取mysql镜像

命令: docker pull mysql:5.6.35​​​​​​​

2、创建宿主机挂载目录(实现数据持久化,容器删除了数据依然存在)

      创建数据库相关的目录,如:logs、data、conf,用来挂在容器中的mysql数据库的目录文件,实现数据同步传递、确保数据的持久化,创建的目录需要配置相应的读写权限,如:chmod 777 $MYSQL_HOME/*

3、在conf目录中创建my.conf 文件,设置mysql配置

[mysqld]
pid-file=/var/run/mysqld/mysqld.pid
socket=/var/run/mysqld/mysqld.sock
datadir=/var/lib/mysql
port = 3306
server_id = 1
#绑定mysql可以接受来自哪些ip地址客户端的访问;使用docker运行mysql服务,并且其他docker容器需要访问mysql的话,需要使用该参数来绑#定其他docker容器也能访问的ip地址,一般docker使用172.17.0.1这个地址
bind-address = 0.0.0.0
#设置客户端链接时使用的字符编码
init_connect=’SET NAMES utf8’
character_set_server = utf8
[mysql]
default-character-set = utf8
[client]
default-character-set = utf8
[mysql.server]
default-character-set = utf8

4、运行并挂载目录到mysql容器

# 命令:
docker run --name mysql 
-p 3306:3306
-e MYSQL_ROOT_PASSWORD=123456
-d mysql:5.6.35
-v /usr/local/docker_mysql/conf:/etc/mysql/conf 
-v /usr/local/docker_mysql/data:/var/lib/mysql 
-v /usr/local/docker_mysql/logs:/var/log/mysql 
# 参数说明
--name:设置容器名称
-p:端口映射关系,标识通知Docker将容器内部使用的网络端口映射到我们使用的主机上
-e:设置环境变量,或者覆盖已存在的环境变量
-d:标识是让docker容器在后台运行
-v:设置挂在目录映射关系
MYSQL_ROOT_PASSWORD=123456:设置容器中mysql的root用户的密码

补充:

连接mysql命令:mysql -uroot -p123456 -h127.0.0.1 -P3307
开放端口:firewall-cmd --zone=public --add-port=3306/tcp --permanent
重启防火墙:firewall-cmd --reload
允许客户端远程连接mysql:ALTER USER 'root'@'%' IDENTIFIED WITH mysql_native_password BY '123456';

 

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值