概要
Redis部署
- 获取Redis镜像:
- 创建Redis设置文件:
- 在宿主机上创建一个目录用于存放Redis设置文件:
- mkdir -p /data/docker/redis/conf
复制代码
- 创建Redis数据持久化目录:
- 在宿主机上创建一个目录用于Redis数据的持久化存储:
- mkdir -p /data/docker/redis/data
复制代码
- 创建设置文件
- 创建设置文件redis.conf
- cd /data/docker/redis/conf
- touch redis.conf
复制代码 - 根据需要增长设置信息, 下面设置暗码
- 启动Redis容器:
- 使用以下下令启动Redis容器,并将设置文件和数据目录挂载到容器中:
- docker run \
- -d \
- --restart always \
- --name redis \
- -p 6379:6379 \
- -v /data/docker/redis/data:/data \
- -v /data/docker/redis/conf/redis.conf:/etc/redis/redis.conf \
- redis:6.2.6 redis-server /etc/redis/redis.conf
复制代码 此中:
- -d 表现背景运行容器。
- --restart always 设置容器的重启策略。
- --name redis 为容器指定一个名称。
- -p 6379:6379 将容器的6379端口映射到宿主机的6379端口。
- -v /data/docker/redis/data:/data 将宿主机的数据目录挂载到容器中。
- -v /data/docker/redis/conf/redis.conf:/etc/redis/redis.conf 将宿主机的设置文件挂载到容器中。
- redis:6.2.6 指定要使用的Redis镜像和版本(6.2.6)。
- redis-server /etc/redis/redis.conf 指定Redis服务器使用挂载的设置文件启动。
- 测试Redis服务:
- 进入Redis容器:
- docker exec -it redis /bin/bash
复制代码 - 毗连到Redis服务器:
- 使用auth下令举行认证:
MySQL部署
- 获取MySQL镜像:
- 创建MySQL宿主机挂载目录:
- 在宿主机上创建一个目录用于存放MySQL设置文件:
- mkdir -p /data/docker/mysql/conf
复制代码 - 在宿主机上创建一个目录用于MySQL数据的持久化存储:
- mkdir -p /data/docker/mysql/data
复制代码 - 在宿主机上创建一个目录用于存放MySQL的用户名,暗码
- mkdir -p /data/docker/mysql/env
复制代码
- 创建情况变量文件
- 创建设置文件`env_file
- cd /data/docker/redis/env
- touch env_file
复制代码 - 增长情况变量信息
- MYSQL_ROOT_PASSWORD=123456
- MYSQL_USER=test
- MYSQL_PASSWORD=123456
- TZ=Asia/Shanghai
- LANG=en_US.UTF-8
复制代码
- 启动MySQL容器
- 使用以下下令启动MySQL容器,并将设置文件和数据目录挂载到容器中:
- docker run \
- -d \
- --restart always \
- --name mysql \
- -p 3306:3306 \
- --env-file /data/docker/mysql/env/env_file \
- -v /data/docker/mysql/data:/var/lib/mysql \
- -v /data/docker/mysql/conf:/etc/mysql/conf.d \
- mysql:5.7
复制代码 此中:
- -d 表现背景运行容器。
- --restart always 设置容器的重启策略。
- --name mysql 为容器指定一个名称。
- -p 3306:3306 将容器的3306端口映射到宿主机的3306端口。
- --env-file /data/docker/mysql/env/env_file 从宿主机env_file文件中加载情况变量。
- -v /data/docker/mysql/data:/var/lib/mysql 将宿主机的数据目录挂载到容器中。
- -v /data/docker/mysql/conf:/etc/mysql/conf.d 将宿主机的设置文件挂载到容器中。
- mysql:5.7 指定要使用的MySQL镜像和版本(5.7)。
- 测试MySQL服务:
- 进入MySQL容器:
- docker exec -it mysql /bin/bash
复制代码 - 毗连到MySQL服务器:
- mysql -h 127.0.0.1 -uroot -p
复制代码 输入你的root暗码,然后你将进入MySQL下令行界面。
- 创建测试库
- CREATE DATABASE test;
- USE test;
复制代码 - 创建门生表
在MySQL下令行界面中,你可以使用CREATE TABLE语句来创建一个新的表。例如,创建一个名为students的表,包罗门生ID、姓名、年龄和专业字段:
- CREATE TABLE students (
- id INT AUTO_INCREMENT PRIMARY KEY,
- name VARCHAR(100) NOT NULL,
- age INT,
- major VARCHAR(100)
- );
复制代码 这条下令创建了一个名为students的表,此中包罗四个字段:
- id:门生的唯一标识符,自动增长的整数。
- name:门生的名字,字符串类型,最多100个字符。
- age:门生的年龄,整数类型。
- major:门生的专业,字符串类型,最多100个字符。
- 插入数据
创建表之后,你可以使用INSERT INTO语句向表中插入数据。例如:
- INSERT INTO students (name, age, major) VALUES ('张三', 20, '计算机科学');
- INSERT INTO students (name, age, major) VALUES ('李四', 22, '机械工程');
复制代码 这些下令将向students表中插入两条记录。
- 查看数据
插入数据后,你可以使用SELECT语句来查看表中的所有数据:
这将列出students表中的所有记录。
- 退出MySQL
完成操纵后,可以通过输入exit下令或按Ctrl + D退出MySQL下令行界面。
ClickHouse部署
- 获取ClickHouse镜像:
- 使用Docker从官方堆栈拉取ClickHouse镜像:
- docker pull clickhouse/clickhouse-server:23.12
复制代码
- 创建ClickHouse宿主机挂载目录:
- 在宿主机上创建一个目录用于存放ClickHouse设置文件:
- mkdir -p /data/docker/clickhouse/conf
复制代码 - 在宿主机上创建一个目录用于ClickHouse数据的持久化存储:
- mkdir -p /data/docker/clickhouse/data
复制代码
- 增长设置信息
- 导出设置 config.xml 和 users.xml 文件
- # config.xml 文件导出
- docker run --rm --entrypoint=cat clickhouse/clickhouse-server:23.12 /etc/clickhouse-server/config.xml > /data/docker/clickhouse/conf/config.xml
- # users.xml 文件导出
- docker run --rm --entrypoint=cat clickhouse/clickhouse-server:23.12 /etc/clickhouse-server/users.xml > /data/docker/clickhouse/conf/users.xml
复制代码 - 修改users.xml文件
- <root>
- <password_sha256_hex>8d969eef6ecad3c29a3a629280e686cf0c3f5d5a86aff3ca12020c923adc6c92</password_sha256_hex>
- <networks incl="networks" replace="replace">
- <ip>::/0</ip>
- </networks>
- <profile>default</profile>
- <quota>default</quota>
- </root>
复制代码 此中<password_sha256_hex>....</password_sha256_hex>里面是加密后的暗码, 使用如下下令生成:- echo -n "123456" | sha256sum | tr -d '-'
- 8d969eef6ecad3c29a3a629280e686cf0c3f5d5a86aff3ca12020c923adc6c9
复制代码
- 启动ClickHouse容器
- 使用以下下令启动ClickHouse容器,并将设置文件和数据目录挂载到容器中:
- docker run \
- -d \
- --restart always \
- --name clickhouse \
- --ulimit nofile=262144:262144 \
- -p 8123:8123 \
- -p 9000:9000 \
- -v /data/docker/clickhouse/data:/var/lib/clickhouse \
- -v /data/docker/clickhouse/conf/config.xml:/etc/clickhouse-server/config.xml \
- -v /data/docker/clickhouse/conf/users.xml:/etc/clickhouse-server/users.xml \
- clickhouse/clickhouse-server:23.12
复制代码 此中:
- -d 表现背景运行容器。
- --restart always 设置容器的重启策略。
- --name clickhouse 为容器指定一个名称。
- --ulimit nofile=262144:262144 设置容器的文件句柄限定。ClickHouse 需要较高的文件句柄数来处理大量数据,这里设置为 262144。
- -p 8123:8123 将容器内部的 TCP 端口 8123 映射到宿主机的 TCP 端口 8123。这是 ClickHouse 的 HTTP 接口端口,用于 Web 界面访问和某些类型的客户端毗连。
- -p 9000:9000 将容器内部的 TCP 端口 9000 映射到宿主机的 TCP 端口 9000。这是 ClickHouse 的原生 TCP 协议端口,用于客户端毗连。
- -v /data/docker/clickhouse/conf/config.xml:/etc/clickhouse-server/config.xml 将宿主机上的 ClickHouse 设置文件 config.xml 挂载到容器内的相应位置。如许您就可以自定义 ClickHouse 的设置。
-v /data/docker/clickhouse/conf/users.xml:/etc/clickhouse-server/users.xml 将宿主机上的 ClickHouse 用户设置文件 users.xml 挂载到容器内。这个文件包罗了用户账号和权限设置
- clickhouse/clickhouse-server:23.12 指定要运行的 ClickHouse 镜像及其版本标签 23.12。如果标签不指定,默认为 latest。。
- 测试ClickHouse服务:
- 进入ClickHouse容器:
- docker exec -it clickhouse /bin/bash
复制代码 - 毗连到ClickHouse服务器:
- clickhouse-client -u root
复制代码 输入你的root暗码,然后你将进入ClickHouse下令行界面。
- 创建测试库
- CREATE DATABASE IF NOT EXISTS school;
- USE school;
复制代码 - 创建考试成绩表
假设考试成绩表需要包罗门生ID、姓名、考试日期、科目和成
- CREATE TABLE IF NOT EXISTS student_scores
- (
- student_id UInt32,
- name String,
- exam_date Date,
- subject String,
- score UInt8
- ) ENGINE = MergeTree()
- ORDER BY (student_id, exam_date, subject);
复制代码 这里使用 MergeTree 引擎,按 student_id、exam_date 和 subject 排序和分区数据。
- 插入数据
向 student_scores 表中插入一些示例数据:
- INSERT INTO student_scores (student_id, name, exam_date, subject, score) VALUES
- (1, 'Alice', '2024-05-01', 'Math', 92),
- (1, 'Alice', '2024-05-02', 'Science', 88),
- (2, 'Bob', '2024-05-01', 'Math', 75),
- (2, 'Bob', '2024-05-02', 'Science', 80);
复制代码 - 查看数据
- 插入数据后,你可以使用SELECT语句来查看表中的所有数据:
- SELECT * FROM student_scores;
复制代码 - 计算每个门生的平均成绩
- SELECT
- student_id,
- name,
- AVG(score) AS average_score
- FROM student_scores
- GROUP BY student_id, name;
复制代码
- 退出ClickHouse
完成操纵后,可以通过输入exit下令或按Ctrl + D退出ClickHouse下令行界面。
PostgreSQL部署
免责声明:如果侵犯了您的权益,请联系站长,我们会及时删除侵权内容,谢谢合作!更多信息从访问主页:qidao123.com:ToB企服之家,中国第一个企服评测及商务社交产业平台。 |