【Docker】镜像
1:查看Docker状态,为启动状态
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 |
[root@Yjiu ~]# systemctl status docker ● docker.service - Docker Application Container Engine Loaded: loaded (/usr/lib/systemd/system/docker.service; disabled; vendor preset: disabled) Active: active (running) since Tue 2017-11-14 14:45:23 CST; 11min ago Docs: https://docs.docker.com Main PID: 4428 (dockerd) Memory: 16.9M CGroup: /system.slice/docker.service ├─4428 /usr/bin/dockerd └─4436 docker-containerd -l unix:///var/run/docker/libcontainerd/docker-containerd.sock --metrics-interval=0 --start-timeout 2m --state-dir /var/run/dock... Nov 14 14:45:21 Yjiu dockerd[4428]: time="2017-11-14T14:45:21.272460711+08:00" level=info msg="libcontainerd: new containerd process, pid: 4436" Nov 14 14:45:22 Yjiu dockerd[4428]: time="2017-11-14T14:45:22.350843415+08:00" level=info msg="[graphdriver] using prior storage driver: overlay" Nov 14 14:45:22 Yjiu dockerd[4428]: time="2017-11-14T14:45:22.354636620+08:00" level=info msg="Graph migration to content-addressability took 0.00 seconds" Nov 14 14:45:22 Yjiu dockerd[4428]: time="2017-11-14T14:45:22.356014167+08:00" level=info msg="Loading containers: start." Nov 14 14:45:22 Yjiu dockerd[4428]: time="2017-11-14T14:45:22.771455767+08:00" level=info msg="Default bridge (docker0) is assigned with an IP address 17...IP address" Nov 14 14:45:22 Yjiu dockerd[4428]: time="2017-11-14T14:45:22.962950359+08:00" level=info msg="Loading containers: done." Nov 14 14:45:22 Yjiu dockerd[4428]: time="2017-11-14T14:45:22.978996218+08:00" level=info msg="Docker daemon" commit=f4ffd25 graphdriver(s)=overlay version=17.10.0-ce Nov 14 14:45:22 Yjiu dockerd[4428]: time="2017-11-14T14:45:22.979285636+08:00" level=info msg="Daemon has completed initialization" Nov 14 14:45:23 Yjiu dockerd[4428]: time="2017-11-14T14:45:23.002246654+08:00" level=info msg="API listen on /var/run/docker.sock" Nov 14 14:45:23 Yjiu systemd[1]: Started Docker Application Container Engine. Hint: Some lines were ellipsized, use -l to show in full. [root@Yjiu ~]# |
2:在公共仓库中搜索镜像(以mysql为例)
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 |
[root@Yjiu ~]# docker search mysql NAME DESCRIPTION STARS OFFICIAL AUTOMATED mysql MySQL is a widely used, open-source relati... 5225 [OK] mariadb MariaDB is a community-developed fork of M... 1624 [OK] mysql/mysql-server Optimized MySQL Server Docker images. Crea... 366 [OK] percona Percona Server is a fork of the MySQL rela... 299 [OK] hypriot/rpi-mysql RPi-compatible Docker Image with Mysql 73 zabbix/zabbix-server-mysql Zabbix Server with MySQL database support 63 [OK] centurylink/mysql Image containing mysql. Optimized to be li... 53 [OK] sameersbn/mysql 48 [OK] zabbix/zabbix-web-nginx-mysql Zabbix frontend based on Nginx web-server ... 38 [OK] tutum/mysql Base docker image to run a MySQL database ... 28 1and1internet/ubuntu-16-nginx-php-phpmyadmin-mysql-5 ubuntu-16-nginx-php-phpmyadmin-mysql-5 17 [OK] schickling/mysql-backup-s3 Backup MySQL to S3 (supports periodic back... 16 [OK] centos/mysql-57-centos7 MySQL 5.7 SQL database server 15 linuxserver/mysql A Mysql container, brought to you by Linux... 12 bitnami/mysql Bitnami MySQL Docker Image 9 [OK] openshift/mysql-55-centos7 DEPRECATED: A Centos7 based MySQL v5.5 ima... 6 centos/mysql-56-centos7 MySQL 5.6 SQL database server 6 frodenas/mysql A Docker Image for MySQL 3 [OK] dsteinkopf/backup-all-mysql backup all DBs in a mysql server 3 [OK] circleci/mysql MySQL is a widely used, open-source relati... 2 cloudfoundry/cf-mysql-ci Image used in CI of cf-mysql-release 0 astronomerio/mysql-sink MySQL sink 0 [OK] ansibleplaybookbundle/rhscl-mysql-apb An APB which deploys RHSCL MySQL 0 [OK] cloudposse/mysql Improved `mysql` service with support for ... 0 [OK] astronomerio/mysql-source MySQL source 0 [OK] [root@Yjiu ~]# # OFFICIAL为[OK],表示官方提供的镜像 # NAME字段,/ 后面是仓库名称 # DESCRIPTION中简要的描述了相关镜像,但由于页面宽度问题,默认给截掉一部分 # 查看详细信息,及显示前5条记录 docker search mysql --no-trunc docker search mysql --no-trunc --limit 5 |
3:下载镜像
我们下载由Oracle提供的镜像
1 2 3 4 5 6 7 8 9 10 |
[root@Yjiu ~]# docker pull mysql/mysql-server Using default tag: latest latest: Pulling from mysql/mysql-server 2bf8c3d0d93d: Pull complete 7f2eb0e72ab8: Pull complete 3836cccaebc4: Pull complete dce39216b323: Pull complete Digest: sha256:6305a35c134c9ad0724f77883dfd30fc9e4a640ba0d62a1b92b348944369aa9d Status: Downloaded newer image for mysql/mysql-server:latest [root@Yjiu ~]# |
4:查看镜像信息
1 2 3 4 |
[root@Yjiu ~]# docker images REPOSITORY TAG IMAGE ID CREATED SIZE mysql/mysql-server latest a3ee341faefb 4 weeks ago 246MB [root@Yjiu ~]# |
5:启动镜像,同时会创建一个容器(docker run –help,可以查看所有的帮助信息)
1 2 3 4 5 6 7 8 |
[root@Yjiu ~]# docker run --name mysql -p 3306:3306 -e MYSQL_ROOT_PASSWORD=Oracle123 -d a3ee341faefb 421066fac729a3065e5a409653eb2a2386cca8e0fc322edb1689a16fd3677523 [root@Yjiu ~]# [root@Yjiu ~]# [root@Yjiu ~]# docker ps CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES 421066fac729 a3ee341faefb "/entrypoint.sh my..." 16 seconds ago Up 15 seconds (health: starting) 0.0.0.0:3306->3306/tcp, 33060/tcp mysql [root@Yjiu ~]# |
–name:为容器指定个名字
-p :端口映射,前面是容器的端口,后面是对应宿主机的端口
-e:指定mysql的root口令
-d:IMAGE ID
6:查看mysql容器状态
1 |
[root@Yjiu ~]# docker stats mysql |
7:启停容器
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 |
[root@Yjiu ~]# docker ps CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES 421066fac729 a3ee341faefb "/entrypoint.sh my..." 10 minutes ago Up 2 seconds (health: starting) 0.0.0.0:3306->3306/tcp, 33060/tcp mysql [root@Yjiu ~]# ## 停止容器 [root@Yjiu ~]# docker stop mysql mysql [root@Yjiu ~]# [root@Yjiu ~]# docker ps CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES [root@Yjiu ~]# ## 启动容器 [root@Yjiu ~]# docker start mysql mysql [root@Yjiu ~]# [root@Yjiu ~]# docker ps CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES 421066fac729 a3ee341faefb "/entrypoint.sh my..." 10 minutes ago Up 2 seconds (health: starting) 0.0.0.0:3306->3306/tcp, 33060/tcp mysql [root@Yjiu ~]# |