阿里云Docker镜像加速

centos7安装docker

安装相应工具

yum -y install yum-utils

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

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

启动docker并设置开机启动

 systemctl start docker

 systemctl enable docker

查看docker版本

docker version

 

网址 https://www.aliyun.com/product/acr

点击管理控制台--》镜像中心--》镜像加速器

 

docker info命令查看是否配置成功

 

docker中以交互方式运行程序

docker run -it --name mycentos02 centos:7

 

 

docker rm 容器id #删除容器

docker rm -f 容器id #强制删除

docker start 容器id

docker attach 容器id # 进入容器终端

docker stop 容器id #停止id

 

docker ps -a # 显示所有容器

docker rm -f $(docker ps -qa) # 清空所有容器

 

docker rmi -f $(docker image -qa) #清空镜像

以守护方式启动容器

docker run -di --name 自定义容器名 容器id

以交互方式启动容器

docker run -it --name 自定义容器名 容器id

进入容器

docker attach 容器id 或 容器名

直接操作容器,执行完回到宿主主机终端。一般用于启动容器里的应用,如tomcat nginx redis elasticsearch等。

docker exec -it 容器ID 或 容器名 /bin/bash

查看日志方法

docker logs 容器id

或者去宿主机的文件目录查找,位置 /var/lib/docker/containers

查看容器进程

docker top 容器id

提交运行时的容器为新的镜像

docker commit -a='author' -m='备注' 运行时的容器id 新镜像名称

推送镜像到阿里云

很多时候,中小公司为了方便搭建私有仓库,直接使用稳定的阿里云镜像仓库,方便公司内部业务系统直接拉取镜像。

步骤一:

进入:https://cr.console.aliyun.com 阿里云镜像控制台,需要注册 用户名就是淘宝或支付宝账户名,镜像控制台密码单独设置。

步骤二:

进入控制台,我们先创建命名空间,再创建镜像。

Docker容器目录挂载

我们可以通过cp命令来实现docker容器和宿主机之间的数据传输,但是这种方式比较麻烦。

我们通过容器目录挂载,能够轻松实现代码上传,配置修改,日志同步等需求,尤其是在搞集群的时候。

语法:

docker run -it -v /宿主机目录:/容器目录 镜像名

多目录挂载

docker run -it -v /宿主机目录:/容器目录 -v /宿主机目录2:/容器目录2 镜像名

注意

如果同步的是多级目录,可能会出现权限不足的提示。

这是因为Centos7中的安全模块 selinux 把权限禁用掉了,我们需要添加 --privilleged=true 来解决挂载的目录没有权限的问题。

挂载只读目录(比如配置文件不允许修改)

docker run -it -v /宿主机目录:/容器目录:ro 镜像名

Docker 部署mysql8

docker pull mysql:8.0.19

docker run -d -p 33060:3306 --name mysql8 -v /home/mysql8/conf:/etc/mysql/ -v /home/mysql8/datadir:/var/lib/mysql/ -v /home/mysql8/log:/var/log --restart always --privileged=true -e MYSQL_USER="fate"  -e MYSQL_PASSWORD="123456" -e MYSQL_ROOT_PASSWORD=fate_dev 9b51d9275906 

解释

-p 端口映射

--name 容器名字

--name mysql8 容器名mysql8

-v 宿主机挂载容器目录(这里分别挂载了mysql的配置目录、数据目录和日志目录,不同的mysql镜像这几个目录可能不相同,需要根据实际情况配置。/home/mysql8是宿主机上的目录)

-v /home/mysql8/conf:/etc/mysql/  映射配置文件目录

-v /home/mysql8/datadir:/var/lib/mysql/  映射数据目录

-v /home/mysql8/log:/var/log 映射日志目录

--restart always 开机启动

--privileged=true 提升容器内权限

-e 表示配置环境变量

-e MYSQL_USER="fate":添加用户

-e MYSQL_PASSWORD="123456":设置普通用户密码

-e MYSQL_ROOT_PASSWORD=”123456”:设置root的密码

 

9b51d9275906 -- 镜像id

----------

进入mysql容器

docker exec -it mysql8 /bin/bash

登录到mysql

mysql -uroot -p123456

修改账号加密算法

ALTER USER 'root'@'%' IDENTIFIED WITH mysql_native_password BY '123456';

刷新权限

FLUSH PRIVILEGES;

宿主机里的home目录下新建mysql目录,复制容器里的conf、log目录到宿主机

执行exit退出mysql

执行exit退出容器到宿主机

在宿主机远程登录容器中的mysql

./mysql -h127.0.0.1 -uroot -P 33060 -p

查询mysql容器的元信息(比如查容器的ip地址)

docker inspect b62e069a3b33(容器id)

 

 

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值