新增:《Docker安装MySQL》(将 VitePress 版本升级为 v1.0.0-alpha.26)

This commit is contained in:
2022-10-30 18:27:59 +08:00
parent 9a6d0b546a
commit ad01e7e8c4
6 changed files with 384 additions and 172 deletions

View File

@@ -105,13 +105,23 @@ docker ps [-a] | grep 容器关键词
```shell
# -d 指定容器在后台运行
# --name 指定容器名称
# -m 限定容器内存大小
# --restart 指定重新启动方式always 表示始终重启
# -e 指定环境变量配置
# -p 指定容器和宿主机的网络端口映射
# -v 指定容器和宿主机的目录挂载
# --network 指定容器使用的网络
# --network-alias 指定容器在网络中的别名
# -m 限定容器内存大小
# --name 指定容器名称
docker run -d [-p 宿主机端口:容器内部端口] [-v 宿主机目录:容器内部目录] [--network 网络名称 --network-alias 网络别名] [-m xxxm] --name 容器名称 镜像名称[:标签/版本]
docker run -d \
--name 容器名称 镜像名称[:标签/版本] \
[-m xxxm] \
--restart=always \
[-e 环境变量名=环境变量值] \
[-p 宿主机端口:容器内部端口] \
[-v 宿主机目录:容器内部目录] \
[--network 网络名称 --network-alias 网络别名]
```
### 停止容器
@@ -163,9 +173,9 @@ docker rm $(docker ps -aq)
### 进入容器内部
```shell
docker exec -it 容器ID/容器名称 /bin/bash
docker exec -it 容器ID/容器名称 bash
docker exec -it 容器ID/容器名称 /bin/sh
docker exec -it 容器ID/容器名称 sh
```
### 从容器内部退出
@@ -248,3 +258,9 @@ docker -v
docker version
```
### 查看 docker 信息
```shell
docker info
```

View File

@@ -37,25 +37,51 @@ docker pull consul:1.13.3
**下方的配置,切记要根据个人实际情况来修改。**
:::
- 容器的名称
- 镜像名称:版本
- 是否设置自启动?
- 是否端口映射?
- 映射的话映射到宿主机哪个端口?
- 是否挂载卷?
- 挂载的话要挂载宿主机哪个目录?
- 是否设置自启动?
- 容器的名称
- 镜像名称:版本
- ......
- 等自定义配置
```shell
docker run -d \
-p 18500:8500 \
-v /opt/disk/consul/conf/:/consul/conf/ \
-v /opt/disk/consul/data/:/consul/data/ \
--name consul consul:1.13.3 \
--restart=always \
--name consul consul:1.13.3
-p 18500:8500 \
-v /opt/disk/docker/volumes/consul/conf:/consul/conf \
-v /opt/disk/docker/volumes/consul/data:/consul/data
```
## 验证
服务器开放好相应端口或设置好安全组规则后,访问 `http://宿主机IP:映射的端口` 例如按上方配置那就是http://宿主机IP:18500即可看到 Consul 界面。
## Docker Compose脚本
如果你是用的 docker-compose 来安装,下方附上相应 docker-compose.yml 脚本内容。
```yaml
version: '3'
services:
consul:
container_name: consul
image: consul:1.13.3
restart: always
environment:
TZ: Asia/Shanghai
ports:
- 18500:8500
volumes:
- /opt/disk/docker/volumes/consul/conf:/consul/conf
- /opt/disk/docker/volumes/consul/data:/consul/data
```
编写好 docker-compose.yml 脚本后,在脚本同级目录执行下方命令即可。
```shell
docker-compose up -d
```

View File

@@ -37,14 +37,14 @@ docker pull osixia/openldap:1.5.0
**下方的配置,切记要根据个人实际情况来修改。**
:::
- 容器的名称
- 镜像名称:版本
- 是否设置自启动?
- 是否端口映射?
- 环境变量配置
- 映射的话映射到宿主机哪个端口?
- 是否挂载卷?
- 挂载的话要挂载宿主机哪个目录?
- 具体的环境配置
- 是否设置自启动?
- 容器的名称
- 镜像名称:版本
- ......
- 等自定义配置
@@ -58,15 +58,15 @@ docker pull osixia/openldap:1.5.0
# allow检查客户端证书没有证书或证书错误都允许连接
# never不验证客户端证书
docker run -d \
-p 389:389 -p 636:636 \
-v /opt/disk/openldap/database:/var/lib/ldap \
-v /opt/disk/openldap/conf:/etc/ldap/slapd.d \
--env LDAP_ORGANISATION="baidu" \
--env LDAP_DOMAIN="baidu.com" \
--env LDAP_ADMIN_PASSWORD="123456" \
--env LDAP_TLS_VERIFY_CLIENT=try \
--name openldap osixia/openldap:1.5.0 \
--restart=always \
--name openldap osixia/openldap:1.5.0
-e LDAP_ORGANISATION="baidu" \
-e LDAP_DOMAIN="baidu.com" \
-e LDAP_ADMIN_PASSWORD="123456" \
-e LDAP_TLS_VERIFY_CLIENT=try \
-p 389:389 -p 636:636 \
-v /opt/disk/docker/volumes/openldap/conf:/etc/ldap/slapd.d \
-v /opt/disk/docker/volumes/openldap/data:/var/lib/ldap
```
## 验证
@@ -78,3 +78,34 @@ docker run -d \
![202210262026266](../../../../../public/img/2022/10/26/202210262026266.png)
![202210262026566](../../../../../public/img/2022/10/26/202210262026566.png)
## Docker Compose脚本
如果你是用的 docker-compose 来安装,下方附上相应 docker-compose.yml 脚本内容。
```yaml
version: '3'
services:
openldap:
container_name: openldap
image: osixia/openldap:1.5.0
restart: always
environment:
LDAP_ORGANISATION: baidu
LDAP_DOMAIN: baidu.com
LDAP_ADMIN_PASSWORD: 123456
LDAP_TLS_VERIFY_CLIENT: try
ports:
- 389:389
- 636:636
volumes:
- /opt/disk/docker/volumes/openldap/conf:/etc/ldap/slapd.d
- /opt/disk/docker/volumes/openldap/data:/var/lib/ldap
```
编写好 docker-compose.yml 脚本后,在脚本同级目录执行下方命令即可。
```shell
docker-compose up -d
```

View File

@@ -0,0 +1,106 @@
---
title: Docker 安装 MySQL 详细步骤
author: 查尔斯
date: 2022/10/30 17:36
categories:
- MySQL快速入门
tags:
- MySQL
- Docker
- 容器
showComment: false
---
# Docker 安装 MySQL 详细步骤
::: tip 笔者说
笔者下面的步骤及配置是基于指定版本的实践,大多数程序大多数情况下在相差不大的版本时可以直接参考。(当然了,即使是非 Docker 方式安装程序也是一样道理)
:::
## 拉取镜像
::: warning 笔者说
拉取镜像时需要明确镜像版本Tag
:::
不指定版本Tag就拉取镜像那拉取下来的镜像版本Tag默认是 `latest`(最新的)。`latest` 会跟随 Docker Registry 中的记录变化,现在拉取下来的 `latest` 是 x1 版本,但隔了一段时间后你在其他机器上再拉取 `latest` 可能就是 x2 版本了。
变化的版本,不利于生产环境部署的稳定。无论是后续在其他环境部署还是扩容集群等场景均要求根据架构要求指定好版本。
```shell
docker pull mysql:8.0.29
```
## 运行容器
::: warning 笔者说
**下方的配置,切记要根据个人实际情况来修改。**
:::
- 容器的名称
- 镜像名称:版本
- 是否设置自启动?
- 环境变量配置
- 是否端口映射?
- 映射的话映射到宿主机哪个端口?
- 是否挂载卷?
- 挂载的话要挂载宿主机哪个目录?
- ......
- 等自定义配置
```shell
# MYSQL_ROOT_PASSWORDroot 用户密码
docker run -d \
--name mysql mysql:8.0.29 \
--restart=always \
-e TZ=Asia/Shanghai \
-e MYSQL_ROOT_PASSWORD=123456 \
-p 13307:3306 \
-v /opt/disk/docker/volumes/mysql/conf:/etc/mysql/conf.d \
-v /opt/disk/docker/volumes/mysql/data:/var/lib/mysql \
-v /opt/disk/docker/volumes/mysql/logs:/logs \
# 将 MySQL 8.0 默认密码策略修改为原来策略 (MySQL 8.0 对其默认策略做了更改,会导致密码无法匹配)
--default-authentication-plugin=mysql_native_password \
--character-set-server=utf8mb4 \
--collation-server=utf8mb4_general_ci \
--explicit_defaults_for_timestamp=true \
--lower_case_table_names=1
```
## 验证
服务器开放好相应端口或设置好安全组规则后,直接用 Navicat 连接即可。
## Docker Compose脚本
如果你是用的 docker-compose 来安装,下方附上相应 docker-compose.yml 脚本内容。
```yaml
version: '3'
services:
mysql:
container_name: mysql
image: mysql:8.0.29
environment:
TZ: Asia/Shanghai
MYSQL_ROOT_PASSWORD: 123456
ports:
- 13307:3306
volumes:
- /opt/disk/docker/volumes/mysql/conf:/etc/mysql/conf.d
- /opt/disk/docker/volumes/mysql/data:/var/lib/mysql
- /opt/disk/docker/volumes/mysql/logs:/logs
command:
# 将 MySQL 8.0 默认密码策略修改为原来策略 (MySQL 8.0 对其默认策略做了更改,会导致密码无法匹配)
--default-authentication-plugin=mysql_native_password
--character-set-server=utf8mb4
--collation-server=utf8mb4_general_ci
--explicit_defaults_for_timestamp=true
--lower_case_table_names=1
```
编写好 docker-compose.yml 脚本后,在脚本同级目录执行下方命令即可。
```shell
docker-compose up -d
```