Docker的安装与基本操作详解(基于Centos7.5)

Docker的安装与基本操作详解(基于Centos7.5)

0.前言

全文基于阿里云CES服务器,系统版本centos7.5。版本不同可能有未知BUG…
该文是观看教学视频后的总结与实践:视频资源源自B站尚硅谷官方

1.Docker简介与核心概念

1.1 Docker简介

Docker 是一个基于Go 语言,开源的应用容器引擎。

Docker 可以让开发者打包他们的应用以及依赖包到一个轻量级、可移植的容器中,然后发布到任何流行的 Linux 机器上,也可以实现虚拟化。机制类似于镜像系统。

容器是完全使用沙箱机制,容器之间互不影响,而且容器性能开销极低。

Docker支持将软件编译成一个镜像,然后在镜像中各种软件做好配置,其他使用者便可直接使用该镜像而只需进行极少的配置(比如使用MySQL镜像配置MySQL密码和端口映射)。

1.2 Docker核心概念

  • docker主机:安装了docker的机器
  • doucker客户端:连接docker进行操作
  • docker仓库:保存打包好镜像的仓库(官方/个人)
  • docker镜像:软件打包好的镜像
  • docker容器:docker镜像启动后就是一个容器(容器就相当于平常的软件,容器启动关闭就是软件的启动关闭)

2.Docker的安装(centos7.5)

2.1 使用命令查看内核版本

Docker要求CentOS系统的内核版本高于3.10

uname -r

2.2 升级yum

yum update

2.3 安装docker

yum install docker

2.4 启动docker

systemctl start docker

2.5 置开机docker自启动

systemctl enable docker

2.6 查看docker状态

systemctl status docker

2.7 重启docker

systemctl restart docker

2.8 查看docker概要信息

docker info

2.9 查看docker帮助文档

docker --help

3.Docker常用操作之镜像操作

3.1 搜索软件镜像

实际上就是https://hub.docker.com网站上的内容

docker search mysql

搜索镜像

3.2 拉取镜像

默认下载最新的镜像
docker pull mysql

选择版本
docker pull mysql:5.5

安装MySQL5.5

3.3 查看本地已有镜像

docker images

查看本地镜像

3.4 删除本地镜像

docker rmi IMAGE ID(镜像id,上图有)

4.Docker常用操作之容器操作

将下载好的镜像运行,便产生了相对应的容器。(相当于正运行的软件)

4.1 运行容器

docker run --name 自定义的容器名 -d image-name(指定要运行的容器名称)

–name后面是自定义的容器名,-d代表后台运行,image-name即需要运行的镜像名称

以上述安装的MySQL5.5镜像为例子,运行的指令为:

docker run --name piao-mysql -d mysql:5.5

后续在 5.Docker安装MySQL 详细描述

4.2 查看正在运行的容器

docker ps

会返回一个正在运行的容器列表:

CONTAINER ID 容器ID

IMAGE 镜像

COMMAND 命令相关

CREATED 创建时间

STATUS 运行状态

PORTS 端口映射

NAMES 自己取得容器名称

docker ps查看运行中的容器

查看运行中的容器

4.3 停止容器

docker stop 容器id(上述docker ps命令返回的列表中有)

4.4 查看所有容器(运行的和没运行的)

docker ps -a

4.5 删除容器(需先停止容器)

docker rm 容器id(上述docker ps命令返回的列表中有)

4.6 端口映射

配合容器运行指令,将系统的端口映射到容器中的端口,格式 -p 系统端口:容器端口

以下为有端口映射的运行MySQL

docker run -d -p 3306:3306 mysql:5.5

4.7 查看容器日志

docker logs container-name/container-id(容器名或容器id)

更多命令可参考官方文档: https://docs.docker.com/

5.Docker安装MySQL

之前的命令介绍中已经写过了,这里总结一下:

5.1 拉取mysql5.5版本的镜像

docker pull mysql:5.5

5.2 启动MySQL容器

docker run -p 3306:3306 --name fuyou-mysql-01 -e MYSQL_ROOT_PASSWORD=设置该MySQL密码 -d mysql:5.5

简要说明:
-p 3306:3006 即系统端口3306 映射到容器内部端口3306

–name piao-mysql-01 即为这个容器取的名字

-e MYSQL_ROOT_PASSWORD=设置该MySQL密码 设置MySQL密码

-d 后台运行

最后的mysql:5.5 即本地的mysql:5.5镜像(5.1中拉取的MySQL镜像)

MySQL其他操作,可查看官方文档 https://hub.docker.com/_/mysql

docker运行mysql

5.3 MySQL容器测试:使用navicat连接MySQL

我是用的阿里云的CES服务器,系统版本centos7.5。首先添加安全组规则:

端口范围 协议选择MySQL后默认是3306

授权对象 0.0.0.0/0 所有ip均可访问

CES配置安全组MySQL.png

使用navicat客户端连接上述mysql

navicat连接docker中的MySQL容器

发布了83 篇原创文章 · 获赞 40 · 访问量 3万+

猜你喜欢

转载自blog.csdn.net/qq_42391904/article/details/104289113