当前位置: 首页 > news >正文

安装docker,在docker上安装mysql,docker上安装nginx

目录

一.安装docker

1.1查看Linux版本的命令这里推荐两种:

1.2查看内核版本有三种方式:

2.安装

2.1 如果之前安装了docker,先删除旧版本的doker

2.2 安装需要的软件包,yum-util提供yum-config-manager功能,另外两个是devicemapper驱动依赖

2.3 设置yum源

2.4 安装docker

2.5 docker启动并设置开机自启

2.6 验证docker是否安装成功

二 dockers安装mysql

1 拉取mysql镜像

1.1 拉取提示超时,根据下面的博客解决

2 查看镜像是否拉取成功

3 运行mysql镜像,启动实例/容器

 解读:

3.1 docker启动mysql失败

4 连接mysql

 4.1 navicat连接mysql失败

5 进入容器

6 查看mysql容器的详情

三、docker安装nginx

1 拉取nginx镜像

2 创建并运行nginx容器

三 通用指令

1 将镜像保存为文件,让别人也能使用这个镜像,以nginx为例

2  启动docker容器 docker start 容器名

 3 关闭docker容器

 4 删除容器,需要先停止容器

5 删除镜像

6 查看镜像

7 查看容器

一.安装docker

1、Docker及系统版本 Docker从17.03版本之后分为CE(Community Edition: 社区版)和EE(Enterprise Edition: 企业版)。相对于社区版本,企业版本强调安全性,但需付费使用。这里我们使用社区版本即可。

Docker支持64位版本的CentOS 7和CentOS 8及更高版本,它要求Linux内核版本不低于3.10。

1.1查看Linux版本的命令这里推荐两种:

lsb_release -a或cat /etc/redhat-release。

1.2查看内核版本有三种方式:

cat /proc/version
uname -a
uname -r

2.安装

2.1 如果之前安装了docker,先删除旧版本的doker

`yum remove docker` \``docker-client \``docker-client-latest \``docker-common \``docker-latest \``docker-latest-logrotate \``docker-logrotate \``docker-selinux \``docker-engine-selinux \``docker-engine \``docker-ce`

2.2 安装需要的软件包,yum-util提供yum-config-manager功能,另外两个是devicemapper驱动依赖

yum install -y yum-utils device-mapper-persistent-data lvm2

2.3 设置yum源

yum-config-manager --add-repo https://download.docker.com/linux/centos/docker-ce.repo

如果出现下载缓慢,或者如下图的报错,可以切换成国内的镜像源,如阿里云

下载阿里云的docker镜像仓库文件

curl -o /etc/yum.repos.d/docker-ce.repo https://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repo

2.4 安装docker

sudo yum install -y docker-ce docker-ce-cli containerd.io

2.5 docker启动并设置开机自启

sudo yum install -y docker-ce docker-ce-cli containerd.io
sudo systemctl enable docker

2.6 验证docker是否安装成功

docker --version

二 dockers安装mysql

1 拉取mysql镜像

sudo docker pull mysql:5.7

1.1 拉取提示超时,根据下面的博客解决

解决连接超时问题

2 查看镜像是否拉取成功

sudo docker images

3 运行mysql镜像,启动实例/容器

sudo docker run --name mysql \
-e MYSQL_ROOT_PASSWORD=123456 \
-p 3306:3306 \
-d mysql:5.7 \
-v /mydata/mysql/conf:/etc/mysql \
-v /mydata/mysql/log:/var/log/mysql \
-v /mydata/mysql/data:/var/lib/mysql

 解读:

  • mysql/log: 存储MySQL日志

  • mysql/data: 是数据库文件(库表数据存放处)存放的地方。必须要挂载到容器外,否则容器重启一切数据消失。

  • mysql/conf: mysql配置,mysql启动时读取配置

  • 设置端口映射:外部访问宿主机的端口3306,会将这个请求交给容器的3306端口处理,即可以让外部访问到容器

镜像名称组成: 镜像名:镜像的版本。如果没有指定版本,默认是latest,代表最新的版本镜像

查看docker启动的容器执行情况(up状态就是启动成功)

# 查看启动的容器进程
sudo docker ps
# 查看所有的容器
sudo docker ps -a

可以看到容器的状态是启动(up),创建时间33分钟前,容器名称mysql,linux的3306端口映射到了mysql的3306端口,所以之后连接linux的3306,相当于操作到了docker容器的mysql监听的3306端口

3.1 docker启动mysql失败

  docker启动mysql失败

4 连接mysql

linux启动linux安装的mysql,使用

mysql -uroot -p

 4.1 navicat连接mysql失败

   navicat连接mysql失败

linux启动docker安装的mysql,使用

mysql -h 127.0.0.1 -P 3306 -u root -p

5 进入容器

mysql容器名

docker exec -it mysql /bin/bash

6 查看mysql容器的详情

docker inspect mysql

三、docker安装nginx

1 拉取nginx镜像

docker pull nginx:1.20.2

2 创建并运行nginx容器

docker run -d --name nginx -p 80:80 nginx:1.20.2
  • -d:后台运行容器。

  • -p 80:80:将容器的80端口映射到宿主机的80端口。

  • --name nginx:为容器指定一个名称,这里是nginx

  • nginx:1.20.2:指定拉取的Nginx镜像,如果在本地已经存在,就直接使用,如果不存在,就去镜像仓库拉取

出现下面的图片就是成功

三 通用指令

1 将镜像保存为文件,让别人也能使用这个镜像,以nginx为例

-o 将镜像输出为什么样的文件,即将nginx:1.20.2的镜像保存为nginx-1.20.2.tar的文件

docker save -o nginx-1.20.2.tar nginx:1.20.2

保存完之后通过xftp将linux的nginx文件下载下来,然后发送给别人,别人通过xftp上传到宿主机上,然后使用指令解压

-i 读取哪一个文件

docker load -i nginx-1.20.2.tar

2  启动docker容器 docker start 容器名

# 启动
docker start mysql
# 重启
docker restart mysql

 3 关闭docker容器

docker stop mysql

 4 删除容器,需要先停止容器

# 停止容器后
# 通过容器名删除
docker rm 容器名
# 通过容器id删除
docker rm 容器id
# 如果为停止容器,也可以使用下面的指令强制删除
docker rm -f 容器名

5 删除镜像

# 通过镜像名删除
docker rmi 镜像名:版本号
# 通过镜像id删除
docker rmi 镜像id

6 查看镜像

docker images

7 查看容器

docker ps

相关文章:

  • 微信小程序,基于uni-app的轮播图制作,调用文件中图片
  • 加里·基尔代尔:CP/M之父与个人计算时代的先驱
  • 线程池(六):ThreadLocal相关知识详解
  • 移除元素(简单)
  • 游戏引擎学习第246天:将 Worker 上下文移到主线程创建
  • C语言中结构体的字节对齐的应用
  • WPF与C++ 动态库交互
  • 【网络安全】用 Linux 命令行 CLI 日志文件处理指南
  • 在springboot项目中,如何进行excel表格的导入导出功能?
  • 从OpenAI收购实时数据引擎揭示AI数据库进化方向
  • django之优化分页功能(利用参数共存及封装来实现)
  • 【Linux】Centos7 安装 Docker 详细教程
  • 5.3/Q1,GBD数据库最新文章解读
  • MySQL多查询条件下深度分页性能优化技巧及示例总结
  • 【Castle-X机器人】一、模块安装与调试:机器人底盘
  • JavaScript 笔记 --- part6 --- JS进阶 (part1)
  • 高性能电脑系统优化工具Advanced SystemCare PRO v18.3.0.240 解锁永久专业版
  • 华为云loT物联网介绍与使用
  • 【Castle-X机器人】五、物联网模块配置与调试
  • 4.26学习——web刷题
  • 我国将出台稳就业稳经济推动高质量发展若干举措,将根据形势变化及时出台增量储备政策
  • 酒店就“保洁员调包住客港币”致歉,称希望尽早达成解决方案
  • 伊朗爆炸港口已恢复货物进出口工作
  • 俄总统助理:普京与美特使讨论了恢复俄乌直接谈判的可能性
  • 中央政治局会议举行,传递三重确定性
  • 在黄岩朵云书院,邂逅陈丹燕与月季花的故事