本文章来自【知识林】
在《06 - 分析docker run hello-world(Docker系列)》一文中看到了docker run hello-world
,也描述了hello-world
是镜像名称,是可以从官方镜像仓库拉取的镜像名称。
那么,在官方镜像仓库里面都有些什么镜像可以供我们拉取?这些镜像的名称都是什么样的?我们应该如何拉取?又该如何使用?
带着这些问题,首先需要知识Docker官方的镜像仓库地址是什么:https://hub.docker.com/
可以访问:https://hub.docker.com/explore/来查看比较常用的镜像仓库信息
![常用的镜像仓库](http://zsl131.github.io/docker/07/02.png =100x"常用的镜像仓库")
- 查找
hello-world
镜像
在搜索输入框中输入:hello-world
回车后可以看到下图(official表示是官方的):
点击官方的hello-world
后可以看到下图:
在这里可以看到拉取hello-world
镜像的命令:docker pull hello-world
,及hello-world
镜像所有的tags信息latest
和nanoserver
- 查看Mysql镜像仓库
同样在Search输入框中输入mysql
回车后即可搜索出相应的镜像仓库,点击进入官方的mysql
镜像仓库详情,如图:
在这里可以看到MySQL对应的各种版本(也就是Tags),若要拉取5.5的MySQL镜像可以使用命令:docker pull mysql:5.5
,这和前面介绍的拉取hello-world
的方式一样。
- 运行MySQL容器
通过官方的文档可以看到运行MySQL容器的命令是:
docker run --name some-mysql -e MYSQL_ROOT_PASSWORD=mypwd -d mysql:tag
如:docker run --name mysqldb -e MYSQL_ROOT_PASSWORD=123456 -p 3336:3306 -d mysql:5.7
说明:
docker run
:运行容器
--name
:指定容器名称,这里指定的名称为mysqldb
-e
:指定环境参数,e
是environment
的缩写,在运行MySQL容器时可以指定的环境参数有:
MYSQL_ROOT_PASSWORD : root用户的密码,这里设置的初始化密码为`123456`;
MYSQL_DATABASE : 运行时需要创建的数据库名称;
MYSQL_USER : 运行时需要创建用户名,与MYSQL_PASSWORD一起使用;
MYSQL_PASSWORD : 运行时需要创建的用户名对应的密码,与MYSQL_USER一起使用;
MYSQL_ALLOW_EMPTY_PASSWORD : 是否允许root用户的密码为空,该参数对应的值为:yes;
MYSQL_RANDOM_ROOT_PASSWORD:为root用户生成随机密码;
MYSQL_ONETIME_PASSWORD : 设置root用户的密码必须在第一次登陆时修改(只对5.6以上的版本支持)。
MYSQL_ROOT_PASSWORD 和 MYSQL_RANDOM_ROOT_PASSWORD 两者必须有且只有一个。
-p 3336:3306
:对外映射容器内的端口号,这里将容器里的3306
映射到外部可访问的3336
端口
-d
:后台运行
mysql:5.7
:运行5.7这个版本的mysql
在这篇文章中讲述了如何在hub.docker.com中查找镜像,也简单介绍了一些docker的命令,在下一节中主要讲解docker的一些常用命令。
本文章来自【知识林】