03、docker学习之镜像的使用

镜像命令介绍

Docker的三大核心概念:镜像、容器、仓库。初学者对镜像和容器往往分不清楚,学过面向对象的应该知道类和实例,这跟面向对象里面的概念很相似

我们可以把镜像看作类,把容器看作类实例化后的对象。

常用命令:

1.查看本地已经下载的镜像

docker inamges

  • REPOSITORY:表示镜像的仓库源
  • TAG:镜像的标签,区分不同版本
  • IMAGE ID:镜像ID,16进制组成,唯一标识
  • CREATED:镜像创建时间
  • SIZE:镜像大小

2.下载镜像

docker pull [镜像名]

3.搜索镜像

docker search [镜像名]

4.查找TAG版本

如果要找到指定的TAG版本,需打开docker官网https://hub.docker.com/search/?type=image

docker pull [镜像名]:[镜像名标签】

如:docker pull centos:centos7.5.1804

5.更新镜像名

  • 首先启动镜像 docker run -d  [镜像名]:[镜像名标签】
  • 启动之后,查看到容器id号64cc20e825e3,根据容器id,去修改
  1. -m:提交的描述信息
  2. -a:指定镜像作者
  3. e218edb10161:容器ID
  4. runoob/ubuntu:v2:指定要创建的目标镜像名

 如: docker commit -m="update tag name" -a="centos" 64cc20e825e3 centos:7.5

6.设置镜像名称

docker tag [镜像id] [镜像名]

7.删除镜像

docker rmi  [镜像名]

 

MYSQL的镜像安装

1.下载镜像

docker pull mysql:5.7

2.查看镜像完成

docker images |grep mysql

3.配置MySQL目录用于存放配置和数据

mkdir -p /home/mysql/conf /home/mysql/data /home/mysql/logs

4.启动MySQL容器

docker run -p 3309:3306 --name tpmysql -v /home/mysql/conf:/etc/mysql/conf.d -v /home/mysql/logs:/logs -v /home/mysql/data:/var/lib/mysql -e MYSQL_ROOT_PASSWORD=123456 -d mysql:5.7

命令说明:

  • --name 重命名yoyomysql
  • -p 3309:3306#将容器的 3306 端口映射到主机的 3309 端口
  • -v /home/mysql/conf:/etc/mysql/conf.d#将主机/home/mysql/conf 挂载到容器的 /etc/mysql/my.cnf
  • -v /home/mysql/logs:/logs#将主机/home/mysql/logs目录挂载到容器的/logs
  • -v /home/mysql/data:/var/lib/mysql#将主机/home/mysql/data目录挂载到容器的/var/lib/mysql
  • -e MYSQL_ROOT_PASSWORD=123456#初始化 root 用户的密码
  • -d 挂后台运行

5.进入MySQL容器

docker exec -i -t tpmysql bash

6.远程登录下

GRANT ALL PRIVILEGES ON *.* TO 'root'@'%' IDENTIFIED BY '123456' WITH GRANT OPTION;
FLUSH PRIVILEGES;

 

 

 

docker hub

1、注册账号

访问首页https://hub.docker.com/

2、Linux登录

docker login

 3、新建镜像仓库

 

 4、镜像本地tag

在上传之前,先给本地镜像打个tag标签,相当于重新复制镜像并重命名为docker账户名/仓库名称
命令:docker tag 本地镜像:tag docker账号/docker仓库:tag

docker tag tp_pytest:v1 tpmapt2/tp_pytest

 5、上传镜像:docker push dockerhub账号/docker名

主要是为了将镜像名称和在dockerhub上一致

上传命令:

docker push tpmapt2/tp_pytest

 

拉取镜像:docker push dockerhub账号/docker名

 docker pull  tpmapt2/tp_pytes

posted @ 2020-06-04 17:26  tp2  阅读(168)  评论(0)    收藏  举报