获取镜像
获取最新镜像: docker pull ubuntu (下载的是ubuntu:latest镜像, 完整指令: docker pull registry.hub.docker.com/ubuntu:latest,即默认从注册服务器registry.hub.docker.com中的ubuntu仓库下载标记为latest的镜像),文件系统由若干层组成,每一层有ID与之对应,是实现增量保存与更新的基础
获取指定版本镜像: docker pull ubuntu: 14.04
从其它注册服务器仓库下载,如dl.dockerpool.com: docker pull dockerpool.com:5000/ubuntu
下载镜像到本地后,开始使用: docker run -t -i ubuntu /bin/bash
查看镜像
查看镜像信息: docker images 可以列出本地主机上已有镜像(列出信息中tag字段用于区分同一仓库不同镜像)
docker tag命令为本地镜像添加新标签(起到引用或别名作用,其实id都指向一个镜像)。如添加ubuntu:latest镜像标签: docker tag dl.dockerpool.com:5000/ubuntu:latest ubuntu:latest
查看docker详细信息: docker inspect dicker_id , 返回json格式消息
若只要其中一项内容时,可使用-f指定,如获取镜像的Architecture信息: docker inspect -f {{“.Architecture”}} 550
搜寻镜像
docker search 搜索远端仓库中的共享镜像,默认搜索Docker Hub官方仓库镜像,用法为docker search TERM,参数为:
–automated=false 仅显示自动创建的镜像
–no-trunc=false输出信息不截断显示
-s, –stars=0 指定仅显示评价为指定星级以上的镜像,例如搜索带mysql关键字的镜像, sudo docker search mysql, 默认按星级评价排序
删除镜像
docker rmi IMAGE, IMAGE可以是tag或ID, docker rmi tag 只是删除该标签指定的镜像,若有多个标签指向一个id,则其他标签镜像不会受影响,若是id,则会删除所有指向该镜像的tag,然后删除镜像本身,但是当有该镜像创建的容器存在时,镜像文件默认是无法被删除的
docker rmi -f ubuntu, -f参数强制删除,不推荐,往往造成一些遗留问题(被强制删除的镜像,会生成标签为的临时镜像,并换了新ID,继续存系统);
删除已有容器的镜像的正确做法是先删除镜像依赖的所有容器,在删除镜像,如:
1、docker ps -a , 查看本机存在的容器
2、docker rm 容器id ,删除容器id,
3、dicker rmi -f image_id
4、docker images 查看是否已被删除
---------------------
安装mysql容器出现错误:Error response from daemon: Head https://registry-1.docker.io/v2/library/mysql/manifests/latest: rea
CentOS 7系统的配置步骤:
1、打开daemon.json文件:
vi /etc/docker/daemon.json
1
2、在里面输入阿里云镜像配置:
{
"registry-mirrors":["https://6kx4zyno.mirror.aliyuncs.com"]
}
3、重启docker服务:
sudo systemctl restart docker
运行mysql容器:
docker run -itd --name mysql-test -p 3306:3306 -e MYSQL_ROOT_PASSWORD=123456 mysql
检查容器是否启动:
docker ps
进入mysql数据库:
docker exec -it mysql-rainy bash
mysql -h localhost -u root -p
docker 修改mysql中的my.cnf文件关闭SSL认证:
先查看ssl是否开启:
mysql> SHOW VARIABLES LIKE '%ssl%';
mysql> SHOW VARIABLES LIKE '%ssl%';
+---------------+-----------------+
| Variable_name | Value |
+---------------+-----------------+
| have_openssl | YES |
| have_ssl | YES |
| ssl_ca | ca.pem |
| ssl_capath | |
| ssl_cert | server-cert.pem |
| ssl_cipher | |
| ssl_crl | |
| ssl_crlpath | |
| ssl_key | server-key.pem |
+---------------+-----------------+
修改 /etc/mysql/my.cnf文件,先安装vim:
apt-get update
apt-get install vim
[mysqld]
...
skip_ssl
# disable_ssl
...
重启docker mysql容器:
docker ps -a
docker restart 容器ID
成功连上数据库: