Docker学习笔记

Docker

1、简介

docker是一个开源的应用容器引擎;
docker支持将软件编译成一个镜像;然后再镜像中各种软件做好配置,将镜像发布出去,其他使用者可以直接使用这个镜像。
运行中的这个镜像成为容器,容器启动是非常快速的。

2、核心概念

docker主机(Host):安装了Docker程序的机器(Docker直接安装再操作系统之上);
docker客户端(Client):连接docker主机进行操作;
docker仓库(Registry):用来保存各种打包好的软件镜像;
docker镜像(Images): 软件打包好的镜像;放在docker仓库中;
docker容器(Container):镜像启动后的实例成为一个容器;容器是独立运行的一个或一组应用;

使用docker的步骤:
1)安装docker
2)去docker仓库中找到这个软件对应的镜像;
3)使用docker运行这个镜像,这个镜像就会生成一个docker容器
4)对容器的启动停止就是对软件的启动停止

3、Linux虚拟机安装docker

步骤:
1.检查内核版本,必须是3.10及以上

1
2
[root@localhost init.d]# uname -r
3.10.0-957.el7.x86_64

2.安装docker

1
yum install docker -y

3.启动docker

1
2
3
[root@localhost init.d]# systemctrl start docker
[root@localhost init.d]# docker -v
Docker version 1.13.1, build 4ef4b30/1.13.1

4.设置开机自启动docker

1
enable docker

5.停止docker

1
systemctl stop docker

4、docker镜像操作

1、搜索镜像

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
[root@localhost init.d]# docker search mysql
INDEX NAME DESCRIPTION STARS OFFICIAL AUTOMATED
docker.io docker.io/mysql MySQL is a widely used, open-source relati... 9073 [OK]
docker.io docker.io/mariadb MariaDB is a community-developed fork of M... 3206 [OK]
docker.io docker.io/mysql/mysql-server Optimized MySQL Server Docker images. Crea... 673 [OK]
docker.io docker.io/centos/mysql-57-centos7 MySQL 5.7 SQL database server 67
docker.io docker.io/centurylink/mysql Image containing mysql. Optimized to be li... 61 [OK]
docker.io docker.io/mysql/mysql-cluster Experimental MySQL Cluster Docker images. ... 60
docker.io docker.io/deitch/mysql-backup REPLACED! Please use http://hub.docker.com... 41 [OK]
docker.io docker.io/bitnami/mysql Bitnami MySQL Docker Image 35 [OK]
docker.io docker.io/tutum/mysql Base docker image to run a MySQL database ... 34
docker.io docker.io/schickling/mysql-backup-s3 Backup MySQL to S3 (supports periodic back... 28 [OK]
docker.io docker.io/prom/mysqld-exporter 26 [OK]
docker.io docker.io/linuxserver/mysql A Mysql container, brought to you by Linux... 24
docker.io docker.io/centos/mysql-56-centos7 MySQL 5.6 SQL database server 18
docker.io docker.io/circleci/mysql MySQL is a widely used, open-source relati... 16
docker.io docker.io/mysql/mysql-router MySQL Router provides transparent routing ... 14
docker.io docker.io/arey/mysql-client Run a MySQL client from a docker container 13 [OK]
docker.io docker.io/databack/mysql-backup Back up mysql databases to... anywhere! 10
docker.io docker.io/openshift/mysql-55-centos7 DEPRECATED: A Centos7 based MySQL v5.5 ima... 6
docker.io docker.io/fradelg/mysql-cron-backup MySQL/MariaDB database backup using cron t... 4 [OK]
docker.io docker.io/genschsa/mysql-employees MySQL Employee Sample Database 4 [OK]
docker.io docker.io/ansibleplaybookbundle/mysql-apb An APB which deploys RHSCL MySQL 2 [OK]
docker.io docker.io/devilbox/mysql Retagged MySQL, MariaDB and PerconaDB offi... 2
docker.io docker.io/jelastic/mysql An image of the MySQL database server main... 1
docker.io docker.io/monasca/mysql-init A minimal decoupled init container for mysql 0
docker.io docker.io/widdpim/mysql-client Dockerized MySQL Client (5.7) including Cu... 0 [OK]

2.下载镜像

1
2
3
4
#下载最新版本的镜像
docker pull mysql
#下载指定版本的MySql镜像
docker pull mysql:5.5

3、查看所有镜像

1
docker images

4、删除镜像

1
docker rmi image-id

5、docker容器操作

软件镜像—运行镜像—产生一个容器(正在运行的软件)

1
2
3
4
5
6
#1、搜索镜像
docker search tomcat
#2、拉取镜像
docker pull tomcat
#3、根据镜像启动容器
docker run --name mytomcat -d tomcat:latest

Docker学习笔记
https://skynetboys.github.io/2020/01/29/Docker学习笔记/
Author
Edison
Posted on
January 29, 2020
Licensed under