1.docker查找镜像
[root@iz2zecch299trjydpa40ypz ~]$ docker search mysql
INDEX NAME DESCRIPTION STARS OFFICIAL AUTOMATED
docker.io docker.io/mysql MySQL is a widely used, open-source relati... 7577 [OK]
docker.io docker.io/mariadb MariaDB is a community-developed fork of M... 2453 [OK]
docker.io docker.io/mysql/mysql-server Optimized MySQL Server Docker images. Crea... 568 [OK]
docker.io docker.io/zabbix/zabbix-server-mysql Zabbix Server with MySQL database support 154 [OK]
docker.io docker.io/hypriot/rpi-mysql RPi-compatible Docker Image with Mysql 102
docker.io docker.io/zabbix/zabbix-web-nginx-mysql Zabbix frontend based on Nginx web-server ... 81 [OK]
docker.io docker.io/centurylink/mysql Image containing mysql. Optimized to be li... 59 [OK]
docker.io docker.io/1and1internet/ubuntu-16-nginx-php-phpmyadmin-mysql-5 ubuntu-16-nginx-php-phpmyadmin-mysql-5 48 [OK]
docker.io docker.io/centos/mysql-57-centos7 MySQL 5.7 SQL database server 44
docker.io docker.io/mysql/mysql-cluster Experimental MySQL Cluster Docker images. ... 37
docker.io docker.io/tutum/mysql Base docker image to run a MySQL database ... 31
docker.io docker.io/bitnami/mysql Bitnami MySQL Docker Image 23 [OK]
docker.io docker.io/schickling/mysql-backup-s3 Backup MySQL to S3 (supports periodic back... 23 [OK]
docker.io docker.io/zabbix/zabbix-proxy-mysql Zabbix proxy with MySQL database support 18 [OK]
docker.io docker.io/linuxserver/mysql A Mysql container, brought to you by Linux... 17
docker.io docker.io/centos/mysql-56-centos7 MySQL 5.6 SQL database server 12
docker.io docker.io/circleci/mysql MySQL is a widely used, open-source relati... 8
docker.io docker.io/mysql/mysql-router MySQL Router provides transparent routing ... 8
docker.io docker.io/openshift/mysql-55-centos7 DEPRECATED: A Centos7 based MySQL v5.5 ima... 6
docker.io docker.io/dsteinkopf/backup-all-mysql backup all DBs in a mysql server 5 [OK]
docker.io docker.io/jelastic/mysql An image of the MySQL database server main... 1
docker.io docker.io/openzipkin/zipkin-mysql Mirror of https://quay.io/repository/openz... 1
docker.io docker.io/ansibleplaybookbundle/mysql-apb An APB which deploys RHSCL MySQL 0 [OK]
docker.io docker.io/cloudfoundry/cf-mysql-ci Image used in CI of cf-mysql-release 0
docker.io docker.io/cloudposse/mysql Improved `mysql` service with support for ... 0 [OK]
[root@iz2zecch299trjydpa40ypz ~]$
2.docker下载镜像
docker pull mysql/mysql-server:latest
3.doucker查看容器及启动容器
[root@iz2zecch299trjydpa40ypz ~]$ docker images
REPOSITORY TAG IMAGE ID CREATED SIZE
docker.io/tomcat latest 48dd385504b1 10 days ago 475 MB
docker.io/wurstmeister/kafka latest 9de73503addf 3 weeks ago 337 MB
docker.io/rabbitmq management d69a5113ceae 7 weeks ago 149 MB
docker.io/zookeeper latest f336949ce7a1 7 weeks ago 148 MB
docker.io/mysql latest 2dd01afbe8df 7 weeks ago 485 MB
[root@iz2zecch299trjydpa40ypz ~]$ docker run --name mysql -d --restart always -p 3306:3306 -e MYSQL_ROOT_PASSWORD=123456 -v /docker/mysql_data:/var/lib/mysql docker.io/mysql
820d7e1343201c1cd0c4ccc3bcdc0354e8c592471d118e39f104a3a5c456663c
[root@iz2zecch299trjydpa40ypz ~]$
其中,–name mysql:容器指定名称为mysql;-d:后台运行容器,并返回容器ID;–restart always:在容器退出时总是重启容器;-p 3306:3306:将宿主机的3306端口(前者)映射到容器的3306端口(后者);-e MYSQL_ROOT_PASSWORD=123456:设置mysql的root密码为123456;-v /docker/mysql_data:/var/lib/mysql:将宿主机的目录/docker/mysql_data映射到容器的目录/var/lib/mysql,用于存放容器的mysql数据库文件。
4.删除docker中的镜像
ntagged: docker.io/wurstmeister/zookeeper:latest
Untagged: docker.io/wurstmeister/zookeeper@sha256:2d71f9e0cb3440d552ee31769a00eb813be87397bf535995aca0bd4eadc151fc
Deleted: sha256:351aa00d2fe9804ed202bb3c1e0f7a337f2a2c316ad87f5e4b3cd052f263782b
Deleted: sha256:cd2cf3704aef513d20c2de71164ca0d61dee828cf5cda22f5d94a6e236c1f537
Deleted: sha256:3d86bd6c82f3d2134f20020ae1dcdb4c35622dfffd846653225348328adc11e1
Deleted: sha256:112613615c3c5830200f6482eb3f7f70679af3829e313b86734373429b0740fd
Deleted: sha256:3180e0cfed96b34b850951884921a54e74ccdb08ba2a412a48a67f3684592a2d
Deleted: sha256:08d496b872a7df357d286f951478725989d59f1d02f429d1b6777a41e259b7d2
Deleted: sha256:43ae9ff4372226476c99eea6d425d7ea95b5a5fb2f74a1b9bbd502a9c3bb9686
Deleted: sha256:feb06b3539913d2c817a6a4aa15ce87925ec57e87fe001fdb21e19a4dc34205c
Deleted: sha256:8a0be0ba98a0a5645b5d23bed652380aec4a501b0136854bf6979ef3652b9a8a
Deleted: sha256:69914bc13886a16f82d734f05b6d31535e32578b0b8027ecd0876f7eee226195
Deleted: sha256:0a6a558061d2753ff3d7a3b2f699b4141afa286c46c64d7479c70680ffb3b31c
Deleted: sha256:16aae303a3e3fc8a3fa161fb753ac18df7fb5cdc3d118bbb1edceb86d846f7ed
Deleted: sha256:d20413971c378e688f6981c69378d2dbf146dce8c69e3281e38b03ff181d8064
Deleted: sha256:0f72e5b180fabc7d295dd2a09fea1b629c83eb6bd13d2e640716251cdbcb3094
Deleted: sha256:1020c0c0f4edc7a5b695351d2dcb8c4e9d70ebd4366d17574ca7e27dfe543fdf
Deleted: sha256:ee468bb36d6d7ef3483378dff5c7920a1340b1e4f5f8c54158d1098e04b79f63
Deleted: sha256:b94a4e48c2c794072e2311cf565a05b12fcff9ab097a294fc57ed9110fd90795
Deleted: sha256:a94a7b5aa8b29d57798c38c7245945c812febe492107770ba965b154d86e869f
Deleted: sha256:9297f600c87d20c6baa252eb509ba3ed6704804237d9d8feec34ddd4ec99184b
Deleted: sha256:f4808639fed5aa49d2b3250683b566a96bdd6652fb0f91ff9024fa0ab89a6bc4
Deleted: sha256:5f70bf18a086007016e948b04aed3b82103a36bea41755b6cddfaf10ace3c6ef
[root@iz2zecch299trjydpa40ypz ~]$
5.查看docker中的容器
[root@iz2zecch299trjydpa40ypz ~]$ docker ps -a
CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES
14ca7ed3e52d wurstmeister/kafka "start-kafka.sh" 2 weeks ago Exited (1) 2 weeks ago kafka
14bce808057b zookeeper:latest "/docker-entrypoin..." 2 weeks ago Exited (143) 7 days ago zookeeper
4735a8f7efcd rabbitmq:management "docker-entrypoint..." 4 weeks ago Exited (0) 7 days ago rabbitmq
b7905a2087dc mysql "docker-entrypoint..." 4 weeks ago Up 15 minutes 33060/tcp, 0.0.0.0:33306->3306/tcp lch_mysql
[root@iz2zecch299trjydpa40ypz ~]$
6.查看docker中运行的容器
[root@iz2zecch299trjydpa40ypz ~]$ docker ps
CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES
b7905a2087dc mysql "docker-entrypoint..." 4 weeks ago Up 16 minutes 33060/tcp, 0.0.0.0:33306->3306/tcp lch_mysql
[root@iz2zecch299trjydpa40ypz ~]$
7.docker
5.docker停止容器
[root@iz2zecch299trjydpa40ypz ~]$ docker stop b7
b7
[root@iz2zecch299trjydpa40ypz ~]$ docker ps
CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES
[root@iz2zecch299trjydpa40ypz ~]$
6.docker删除容器
[root@iz2zecch299trjydpa40ypz ~]$ docker rm b7905a2087dc
b7905a2087dc
7.查看运行的日志
[root@iz2zecch299trjydpa40ypz ~]$ docker run --name centos1 -d docker.io/centos /bin/sh -c "while true;do echo hello;sleep 2;done"
042d873d704e2d5a8d5490f76539ec2721b4e2735145ef021a0c73f4c3978d3d
[root@iz2zecch299trjydpa40ypz ~]$ docker logs 042d
hello
hello
hello
hello
hello
hello
hello
hello
[root@iz2zecch299trjydpa40ypz ~]$ docker logs -t -f 042d
2019-02-11T14:16:34.225043000Z hello
2019-02-11T14:16:36.238415000Z hello
2019-02-11T14:16:38.239684000Z hello
2019-02-11T14:16:40.240891000Z hello
8.查看容器详情
[root@iz2zecch299trjydpa40ypz ~]$ docker inspect 42c
[
{
"Id": "42c219ab5c74bd57adb9a230b00aa42789ac4077ed21ae45a3056e5d72ab192a",
"Created": "2018-12-18T14:32:25.906567938Z",
"Path": "docker-entrypoint.sh",
"Args": [
"mysqld"
],
"State": {
"Status": "running",
"Running": true,
"Paused": false,
"Restarting": false,
"OOMKilled": false,
"Dead": false,
"Pid": 27652,
"ExitCode": 0,
"Error": "",
"StartedAt": "2018-12-25T02:48:26.09188266Z",
"FinishedAt": "2018-12-25T02:48:18.081203213Z"
},
"Image": "sha256:2dd01afbe8df1fe326f6609c56b08beefc6bf254d28993263da188b8fbf1254d",
"ResolvConfPath": "/var/lib/docker/containers/42c219ab5c74bd57adb9a230b00aa42789ac4077ed21ae45a3056e5d72ab192a/resolv.conf",
"HostnamePath": "/var/lib/docker/containers/42c219ab5c74bd57adb9a230b00aa42789ac4077ed21ae45a3056e5d72ab192a/hostname",
"HostsPath": "/var/lib/docker/containers/42c219ab5c74bd57adb9a230b00aa42789ac4077ed21ae45a3056e5d72ab192a/hosts",
"LogPath": "",
"Name": "/mysql",
"RestartCount": 0,
"Driver": "overlay2",
"MountLabel": "",
"ProcessLabel": "",
"AppArmorProfile": "",
"ExecIDs": null,
"HostConfig": {
"Binds": [
"/docker/mysql_data:/var/lib/mysql"
],
"ContainerIDFile": "",
9.重新进入到容器中
[root@iz2zecch299trjydpa40ypz ~]$ docker ps
CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES
042d873d704e docker.io/centos "/bin/sh -c 'while..." 10 minutes ago Up 10 minutes centos1
e1b169b188dc docker.io/tomcat "catalina.sh run" 28 minutes ago Up 28 minutes 8080/tcp tomcat
f9e6b9e6104c docker.io/redis:latest "docker-entrypoint..." 6 weeks ago Up 6 weeks 0.0.0.0:6379->6379/tcp redis5
910a09f2828f docker.io/nginx "nginx -g 'daemon ..." 7 weeks ago Up 6 weeks 0.0.0.0:80->80/tcp quirky_babbage
df075db4f0dc docker.io/tomcat "catalina.sh run" 7 weeks ago Up 5 weeks 0.0.0.0:8080->8080/tcp appdemo
42c219ab5c74 2dd01afbe8df "docker-entrypoint..." 7 weeks ago Up 6 weeks 0.0.0.0:3306->3306/tcp, 33060/tcp mysql
[root@iz2zecch299trjydpa40ypz ~]$ docker attach 042
hello
hello
hello
hello
hello
hello
hello
10.docker提交
[root@iz2zecch299trjydpa40ypz ~]$ docker commit -m="ceshi" -a="kkagr" e1b169b188dc kkagr/mytomcat:1.1
sha256:523df36c203ff80403d50732db4992e289d55e27202e2027851114018f54f476
11.docker容器卷
[root@iz2zecch299trjydpa40ypz ~]$ docker run -it -v /myDataVolume:/dataVolume docker.io/centos
[root@3cc502f2fe83 /]# ^C
[root@3cc502f2fe83 /]#
只读
[root@iz2zecch299trjydpa40ypz ~]$ docker run -it -v /myDataVolume:/dataVolume:ro docker.io/centos
[root@3cc502f2fe83 /]# ^C
[root@3cc502f2fe83 /]#
12.通过dockerfile构建
[root@iz2zecch299trjydpa40ypz /Users/dockertest]$ vim Dockerfile
内容
FROM centos
VOLUME ["/dataVolume1","/datavolume2"]
CMD echo "finished,-----successed"
CMD /bin/bash
结果
[root@iz2zecch299trjydpa40ypz /Users/dockertest]$ docker build -f /Users/dockertest/Dockerfile -t kk/centos .
Sending build context to Docker daemon 2.048 kB
Step 1/4 : FROM centos
---> 1e1148e4cc2c
Step 2/4 : VOLUME /dataVolume1 /datavolume2
---> Running in b8b0d6837296
---> bc8aa784578d
Removing intermediate container b8b0d6837296
Step 3/4 : CMD echo "finished,-----successed"
---> Running in 92454fb9faf8
---> 2c94d5c54311
Removing intermediate container 92454fb9faf8
Step 4/4 : CMD /bin/bash
---> Running in 9c0dfece5d41
---> 7a02d3e90aac
Removing intermediate container 9c0dfece5d41
Successfully built 7a02d3e90aac
[root@iz2zecch299trjydpa40ypz /Users/dockertest]$
启动镜像可以看到文件夹
[root@iz2zecch299trjydpa40ypz ~]$ docker run -it kk/centos
[root@e8d961d4e612 /]# ll
total 64
-rw-r--r-- 1 root root 12076 Dec 5 01:37 anaconda-post.log
lrwxrwxrwx 1 root root 7 Dec 5 01:36 bin -> usr/bin
drwxr-xr-x 2 root root 4096 Feb 12 14:30 dataVolume1
drwxr-xr-x 2 root root 4096 Feb 12 14:30 datavolume2
drwxr-xr-x 5 root root 360 Feb 12 14:30 dev
drwxr-xr-x 1 root root 4096 Feb 12 14:30 etc
drwxr-xr-x 2 root root 4096 Apr 11 2018 home
lrwxrwxrwx 1 root root 7 Dec 5 01:36 lib -> usr/lib
lrwxrwxrwx 1 root root 9 Dec 5 01:36 lib64 -> usr/lib64
drwxr-xr-x 2 root root 4096 Apr 11 2018 media
drwxr-xr-x 2 root root 4096 Apr 11 2018 mnt
drwxr-xr-x 2 root root 4096 Apr 11 2018 opt
dr-xr-xr-x 112 root root 0 Feb 12 14:30 proc
dr-xr-x--- 2 root root 4096 Dec 5 01:37 root
drwxr-xr-x 1 root root 4096 Feb 12 14:30 run
lrwxrwxrwx 1 root root 8 Dec 5 01:36 sbin -> usr/sbin
drwxr-xr-x 2 root root 4096 Apr 11 2018 srv
dr-xr-xr-x 13 root root 0 Feb 12 14:30 sys
drwxrwxrwt 7 root root 4096 Dec 5 01:37 tmp
drwxr-xr-x 13 root root 4096 Dec 5 01:36 usr
drwxr-xr-x 18 root root 4096 Dec 5 01:36 var
[root@e8d961d4e612 /]#
13.容器卷复制
[root@iz2zecch299trjydpa40ypz ~]$ docker run -d --name con1 kk/centos
bc832da77d332c146b81d0d17668dc2a987fcecd119241116b95a53386185609
[root@iz2zecch299trjydpa40ypz ~]$ docker run -it con2 --volumes-from con1 kk/centos
Unable to find image 'con2:latest' locally
Trying to pull repository docker.io/library/con2 ...
/usr/bin/docker-current: repository docker.io/con2 not found: does not exist or no pull access.
See '/usr/bin/docker-current run --help'.
[root@iz2zecch299trjydpa40ypz ~]$ docker run -it --name con2 --volumes-from con1 kk/centos
[root@0b3095926ac8 /]#