Docker 实战(三)中间件安装

629 阅读3分钟

image.png 上一篇整理了一些常用命令,这一篇就把我们项目运行需要的中间件和环境的进行全部安装好。

一,安装nginx。

1,打开hub.docker.com/_/nginx?tab… pull nginx下载最新版本,也可以点进去下载指定的版本。

图片

#下载稳定版本docker pull nginx:stable

2,查看镜像

docker images

3,运行容器\

#--name nginx-test:容器名称。#-p 8080:80:端口进行映射,将本地 8080 端口映射到容器内部的 80 端口。#-d nginx:设置容器在在后台一直运行。docker run --name nginx-test -p 8080:80 -d nginx:stab

这里插一下备注:\

阿里云服务的安全组规则需要自己设置一下,设置哪些端口可以被外放访问(把redis:6379,mysql:3306,nginx:8080同时打开吧),不然从外网无法访问你的阿里云主机,自行百度即可。

4,访问测试xxx.xxx.xxx.xxx:8080/。测试完成nginx的…

图片

二,安装redis。\

1,同样的步骤打开 hub.docker.com/_/redis?tab…

#下载最新版本docker pull redis:latest

2,查看镜像docker images\

3,运行容器。\

# -p 6379:6379:映射容器服务的 6379 端口到宿主机的 6379 端口。外部可以直接通过宿主机ip:6379 访问到 Redis 的服务。docker run -itd --name redis-test -p 6379:6379 redis

这里再插一句,自己的记得设置密码,自行百度redis设置密码。

4,安装运行成功,测试。

docker exec -it redis-test /bin/bash

图片

5,使用工具从外网连接。

图片

三,安装mysql。

1,hub.docker.com/_/mysql?tab… 。下载最新版本。

docker pull mysql:latest

2,查看进行docker images。

3,运行容器。

# -p 3306:3306 :映射容器服务的 3306 端口到宿主机的 3306 端口,外部主机可以直接通过 宿主机ip:3306 访问到 MySQL 的服务。# MYSQL_ROOT_PASSWORD=123456:设置 MySQL 服务 root 用户的密码。docker run -itd --name mysql-test -p 3306:3306 -e MYSQL_ROOT_PASSWORD=123456 mysql

4,本机可以通过 root 和密码 123456 访问 MySQL 服务。

docker run -itd --name mysql-test -p 3306:3306 -e MYSQL_ROOT_PASSWORD=123456 mysql

5,进入容器。

docker exec -it 06aca7159567 /bin/bash

6,测试连接数据库。

图片

7,远程navicat连接成功。

图片

备注:

远程连接报错:原因是使用了最新版本。mysql8 之前的版本中加密规则是mysql_native_password,而在mysql8之后,加密规则是caching_sha2_password

图片

#登录mysql -u root -p#选择数据库use mysql;select user,plugin from user where user='root';#更改加密方式ALTER USER 'root'@'%' IDENTIFIED BY '123456' PASSWORD EXPIRE NEVER; #修改加密规则#更新用户密码ALTER USER 'root'@'%' IDENTIFIED WITH mysql_native_password BY '123456';#修改密码#刷新权限FLUSH PRIVILEGES;#刷新

图片