Docker中创建并配置MySQL、nginx、redis等容器

这篇具有很好参考价值的文章主要介绍了Docker中创建并配置MySQL、nginx、redis等容器。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

Docker中安装并配置MySQL、nginx、redis等


一、创建nginx容器

①:拉取镜像

# 下载最新版本的nginx的镜像
docker pull nginx:latest

# 或指定版本
docker pull nginx:1.25.3

Docker中创建并配置MySQL、nginx、redis等容器,# docker,Linux,docker,mysql,nginx

②:运行nginx镜像

1.运行

# 最新版本的nginx的镜像
docker run --name nginx -p 80:80 -d nginx
# 指定版本运行
docker run --name nginx -p 80:80 -d nginx:1.25.3
# 参数详解
- --name nginx 指定容器的名称
- -p 80:80 映射端口
- -d 守护进程运行

Docker中创建并配置MySQL、nginx、redis等容器,# docker,Linux,docker,mysql,nginx

2.查看运行的镜像

docker ps

Docker中创建并配置MySQL、nginx、redis等容器,# docker,Linux,docker,mysql,nginx

③:从nginx容器中映射nginx配置文件到本地

1.创建本地文件夹

mkdir -p /usr/local/nginx

2.从容器nginx里复制配置文件到本地

docker cp nginx:/etc/nginx/ /usr/local/nginx
docker cp nginx:/usr/share/nginx/html /usr/local/nginx

Docker中创建并配置MySQL、nginx、redis等容器,# docker,Linux,docker,mysql,nginx

3.查看复制后的本地文件

Docker中创建并配置MySQL、nginx、redis等容器,# docker,Linux,docker,mysql,nginx
Docker中创建并配置MySQL、nginx、redis等容器,# docker,Linux,docker,mysql,nginx

Docker中创建并配置MySQL、nginx、redis等容器,# docker,Linux,docker,mysql,nginx

可以看到文件复制成功!

④:重启nginx并重新配置nginx的挂载

1.删除容器

# 先停止在删除
docker stop nginx 
docker rm nginx

# 或 直接删除
docker rm -f nginx

Docker中创建并配置MySQL、nginx、redis等容器,# docker,Linux,docker,mysql,nginx

2.重新启动nginx 并挂载到本地

docker run \
-p 80:80 \
--name nginx \
--restart=always \
-v /usr/local/nginx/nginx/nginx.conf:/etc/nginx/nginx.conf \
-v /usr/local/nginx/html:/usr/share/nginx/html \
-v /usr/local/nginx/logs:/var/log/nginx \
-d nginx:1.25.3

# 命令分析
docker run 
-p 80:80                            # 将主机的 80 端口映射到容器的 80 端口
--name nginx                         # 指定容器的名称为 "nginx"
--restart=always                     # 容器停止后自动重新启动
-v /usr/local/nginx/nginx.conf:/etc/nginx/nginx.conf #将主机的 /usr/local/nginx/nginx 目录挂载到容器的 /etc/nginx 目录
-v /usr/local/nginx/html:/usr/share/nginx/html  # 将主机的 /usr/local/nginx/html 目录挂载到容器的 /usr/share/nginx/html 目录
-v /usr/local/nginx/logs:/var/log/nginx  # 将主机的 /usr/local/nginx/logs 目录挂载到容器的 /var/log/nginx 目录
-d nginx:1.25.3                      # 使用镜像 nginx:1.25.3,并以后台模式运行容器

Docker中创建并配置MySQL、nginx、redis等容器,# docker,Linux,docker,mysql,nginx

3.查看运行的容器

docker ps

Docker中创建并配置MySQL、nginx、redis等容器,# docker,Linux,docker,mysql,nginx

4.修改文件 浏览器访问测试

  • 修改首页

Docker中创建并配置MySQL、nginx、redis等容器,# docker,Linux,docker,mysql,nginx

  • 访问(文件映射成功!)Docker中创建并配置MySQL、nginx、redis等容器,# docker,Linux,docker,mysql,nginx

二、创建redis容器

①:拉取redis镜像

# 拉取最新镜像
docker pull redis

# 或指定版本
docker pull redis:5.0

Docker中创建并配置MySQL、nginx、redis等容器,# docker,Linux,docker,mysql,nginx

②:创建挂载目录

# 创建redis配置目录
mkdir -p /usr/local/redis/conf

# 进入到该目录
cd /usr/local/redis/conf

③:下载redis的配置文件

redis中文官方网站:http://www.redis.cn/download.html

Docker中创建并配置MySQL、nginx、redis等容器,# docker,Linux,docker,mysql,nginx

下载后解压出来并复制到虚拟机中

Docker中创建并配置MySQL、nginx、redis等容器,# docker,Linux,docker,mysql,nginx

④:修改默认配置信息

vi /usr/local/redis/redis.conf

# 配置信息 分析
bind 127.0.0.1 # 这行要注释掉,解除本地连接限制
protected-mode no # 默认yes,如果设置为yes,则只允许在本机的回环连接,其他机器无法连接。
daemonize no # 默认no 为不守护进程模式
requirepass 123456 # 设置密码
appendonly yes # 持久化

Docker中创建并配置MySQL、nginx、redis等容器,# docker,Linux,docker,mysql,nginx

⑤:创建并启动redis容器

1.创建运行程序

docker run --name redis \
-p 6379:6379 \
--restart=always \
-v /usr/local/redis/conf/redis.conf:/etc/redis/redis.conf \
-v /usr/local/redis:/data \
-d redis redis-server /etc/redis/redis.conf --appendonly yes
# 命令分析
docker run 
--name redis                        # 指定容器的名称为 "redis"
-p 6379:6379                       # 将主机的 6379 端口映射到容器的 6379 端口
--restart 						  #always 选项将容器配置为始终自动重启
-v /usr/local/redis/redis.conf:/etc/redis/redis.conf  # 将主机的 /usr/local/redis/redis.conf 文件挂载到容器的 /etc/redis/redis.conf 文件
-v /usr/local/redis:/data           # 将主机的 /usr/local/redis 目录挂载到容器的 /data 目录
-d redis                            # 使用 redis 镜像,并以后台模式运行容器
redis-server /etc/redis/redis.conf --appendonly yes  # 运行容器内的 redis-server 命令,指定配置文件为 /etc/redis/redis.conf,并启用 appendonly 模式(持久化方式)

Docker中创建并配置MySQL、nginx、redis等容器,# docker,Linux,docker,mysql,nginx

2.查看运行的容器

Docker中创建并配置MySQL、nginx、redis等容器,# docker,Linux,docker,mysql,nginx

⑥:连接测试

Docker中创建并配置MySQL、nginx、redis等容器,# docker,Linux,docker,mysql,nginx
Docker中创建并配置MySQL、nginx、redis等容器,# docker,Linux,docker,mysql,nginx

三、创建MySQL容器

①:拉取MySQL镜像

# 拉取最新镜像
docker pull mysql

# 或指定版本
docker pull mysql:8.0

Docker中创建并配置MySQL、nginx、redis等容器,# docker,Linux,docker,mysql,nginx

②:创建挂载目录

# 创建目录
mkdir -p /usr/local/mysql/data
mkdir -p /usr/local/mysql/init
mkdir -p /usr/local/mysql/conf

完成本地目录挂载:

  • 挂载/usr/local/mysql/data到容器内的/var/lib/mysql目录
  • 挂载/usr/local/mysql/init到容器内的/docker-entrypoint-initdb.d目录(初始化的SQL脚本目录)
  • 挂载/usr/local/mysql/conf到容器内的/etc/mysql/conf.d目录(这个是MySQL配置文件目录)

Docker中创建并配置MySQL、nginx、redis等容器,# docker,Linux,docker,mysql,nginx

③:创建并运行新mysql容器,挂载本地目录

1.创建并运行mysql容器

docker run -d \
  --name mysql \
  -p 3306:3306 \
  --restart=always \
  -e TZ=Asia/Shanghai \
  -e MYSQL_ROOT_PASSWORD=123456 \
  -v /usr/local/mysql/data:/var/lib/mysql \
  -v /usr/local/mysql/conf:/etc/mysql/conf.d \
  -v /usr/local/mysql/init:/docker-entrypoint-initdb.d \
  mysql:8.0
# 命令分析
-d 参数将容器运行在后台;
--name 参数指定容器的名称为 "mysql"-p 参数将容器的 MySQL 服务端口映射到主机的 3306 端口;
--restart always 选项将容器配置为始终自动重启
-e 参数设置容器的时区为 "Asia/Shanghai",并设置 MySQL 超级用户的密码为 "123456"-v 参数将主机上的目录挂载到容器内部的目录中,其中 /usr/local/mysql/data 目录用于存储 MySQL 数据,/usr/local/mysql/conf 目录存储 MySQL 配置文件,/usr/local/mysql/init 目录存储初始化 SQL 文件;
指定使用 MySQL 8.0 镜像。

Docker中创建并配置MySQL、nginx、redis等容器,# docker,Linux,docker,mysql,nginx

2.查看运行中的容器

Docker中创建并配置MySQL、nginx、redis等容器,# docker,Linux,docker,mysql,nginx

3.挂载的目录下有很多数据

Docker中创建并配置MySQL、nginx、redis等容器,# docker,Linux,docker,mysql,nginx

④:连接测试

Docker中创建并配置MySQL、nginx、redis等容器,# docker,Linux,docker,mysql,nginx

1.可以看到mysql库中user表里面root用户是运行所有机器连接的

Docker中创建并配置MySQL、nginx、redis等容器,# docker,Linux,docker,mysql,nginx文章来源地址https://www.toymoban.com/news/detail-806715.html

到了这里,关于Docker中创建并配置MySQL、nginx、redis等容器的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包赞助服务器费用

相关文章

  • 使用docker-compose.yml快速搭建开发、部署环境(nginx、tomcat、mysql、jar包、各种程序)以及多容器通信和统一配置

    image 镜像名称,可去镜像市场查找自己需要的 hostname 容器内服务名 container_name 容器名 volumes 可以把自己电脑的路径映射到容器中的文件夹中 networks 写同一个网络可以让容器之间进行通信 启动 在项目根目录的命令行中输入 docker-compose up 停止 在项目根目录的命令行中输入 d

    2024年02月12日
    浏览(16)
  • Docker安装Nginx并部署&MySQL容器构建

    Docker安装Nginx并部署&MySQL容器构建

    将配置文件上传到conf文件夹(数据库配置文件已放到置顶资源中) /soft/mysql/conf/my.cnf:/etc/my.cnf目录为我们配置绑定的目录 /soft/mysql/data:/var/lib/mysql 是将data目录与MySQL目录进行绑定 进入到我们的MySQL容器中(m1为容器名)  进入容器后登录到MySQL 输入密码后进入到MySQL赋予权限 

    2024年01月19日
    浏览(16)
  • docker快速部署Redis、MySQL、Nginx

    拉取镜像 拷贝一份redis.conf文件复制到/home/ubuntu/redis文件夹下,修改redis.conf配置文件 创建redis容器 MySQL 8.0.30 拉取镜像 创建容器 docker安装完成mysql8,如果使用sqlyog或者navite连接,需要修改密码加密规则,因为低版本客户端工具不支持mysql8最新的加密规则。如果使用客户端连接

    2024年02月03日
    浏览(8)
  • docker 安装启动 nginx 修改配置资源容器端口

    docker 安装启动 nginx 修改配置资源容器端口

    可以先查看docker下是否存在nginx镜像,使用如下这些命令查看: docker images: 列出所有镜像。 docker images nginx: 列出所有nginx镜像,不同版本等等。 docker search nginx: 搜索查看所有nginx镜像信息。 使用 pull 命令拉取nginx镜像: 出现以下内容,等待下载完成即可: 下载完成nginx镜像后

    2024年02月07日
    浏览(8)
  • 2-Docker-应用-多容器部署Django+Vue项目(nginx+uwsgi+mysql)

    2-Docker-应用-多容器部署Django+Vue项目(nginx+uwsgi+mysql)

    基于Linux CentOS 7系统(虚拟机),使用Docker,多容器部署Django+Vue项目 整体部署用到了:Django+Vue+nginx+mysql+uwsgi 先每一个容器单独部署,最后用Docker compose 语法整合,统一部署 参考文章:https://blog.csdn.net/qq_45445505/article/details/135563784 章标题:Docker介绍 节标题:Docker安装 总结梳

    2024年03月10日
    浏览(22)
  • 第3天学习Docker-Docker部署常见应用(MySQL、Tomcat、Nginx、Redis、Centos)

    第3天学习Docker-Docker部署常见应用(MySQL、Tomcat、Nginx、Redis、Centos)

    前提须知: (1)搜索镜像命令 格式:docker search 镜像名 (2)设置Docker镜像加速器 详见文章:Docker设置ustc的镜像源(镜像加速器) 1、部署MySQL 拉取镜像(这里拉取mysql5.7版本) [root@localhost ~]# docker pull mysql:5.7 创建容器(默认运行) [root@localhost ~]# docker run -di --name=my_mysql

    2024年02月06日
    浏览(27)
  • Docker Ubuntu php nginx mysql redis 开发环境部署教程

    点击: ubuntu 22.04 配置多版本 php nginx mysql redis 超简单教程

    2024年02月08日
    浏览(15)
  • docker应用部署(部署MySql,部署Tomcat,部署Nginx,部署Redis)

    docker应用部署(部署MySql,部署Tomcat,部署Nginx,部署Redis)

    一、部署MySQL 搜索mysql镜像 拉取mysql镜像 创建容器,设置端口映射、目录映射 参数说明: -p 3307:3306 :将容器的 3306 端口映射到宿主机的 3307 端口。 -v $PWD/conf:/etc/mysql/conf.d :将主机当前目录下的 conf/my.cnf 挂载到容器的 /etc/mysql/my.cnf。配置目录 -v $PWD/logs:/logs :将主机当前目

    2024年02月03日
    浏览(29)
  • Docker安装常用的容器,包括MySQL,Redis,RabbitMQ,MongoDB,FDFS等

    首先安装docker 依赖库 添加docker ce的软件源信息,自行选择,可添加可不添加,如果不是阿里云或者腾讯云的,请还是添加一下吧 安装docker docker -v --查看docker版本 docker images --查看当前docker运行 sudo systemctl start docker --启动docker 在虚拟机里边 docker images --有时候权限不足 我们

    2024年02月11日
    浏览(39)
  • OpenWRT 中创建docker Openwrt和其他宿主机中的docker容器通信

    OpenWRT 中创建docker Openwrt和其他宿主机中的docker容器通信

    首先网络得支持多拨,否则没有意义,之所以这么折腾,是因为直接OpenWRT多拨的情况下,网心云从原先的映射公网型变成全锥型 openwrt主路由, cpu:Intel® Celeron® CPU J1900 @ 1.99GHz 内存:4G 网口:6口intel I211 千兆网口 原先计划是PVE,然后跑4个OpenWRT虚拟机,然而带不动,基本一

    2024年02月08日
    浏览(14)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包