docker安装mysql、elasticsearch、redis

news/2025/4/2 23:11:59/文章来源:https://www.cnblogs.com/xiaoyangstu/p/18804224

docker安装mysql、elasticsearch、redis

mysql

1、创建mysql要挂载的数据卷,docker的卷一般在/var/lib/docker/volumes目录下

docker volume create mysql-data

2、拉取mysql镜像

docker pull mysql

3、运行容器,并将创建的卷挂载到mysql容器,端口映射,密码不要太复杂

docker run -d \--name=mysql \-p 3306:3306 \-v mysql-data:/var/lib/mysql \-e MYSQL_ROOT_PASSWORD=1234 mysql# -d 后台运行
# -p 宿主机端口:容器内部服务端口		 端口映射
# -v 宿主机数据目录:容器内部数据目录	数据卷挂载docker run -d --name=mysql -p 3306:3306 -v mysql-data:/var/lib/mysql -e MYSQL_ROOT_PASSWORD=1234 mysql

es

1、拉取es镜像,这里选择一个比较稳定的版本 elasticsearch:7.12.1

2、运行容器,挂载数据卷,端口映射

docker run -d \--name es \-e "ES_JAVA_OPTS=-Xms512m -Xmx512m" \-e "discovery.type=single-node" \-v es-data:/usr/local/elasticsearch7.12.1/data \-v es-plugins:/usr/local/elasticsearch7.12.1/plugins \-v es-logs:/usr/local/elasticsearch7.12.1/logs \-p 9200:9200 \-p 9300:9300 \
elasticsearch:7.12.1

redis

1、创建redis要挂载的数据卷

mkdir /home/redis
touch /home/redis/redis.conf
docker volume create redis-data

2、修改redis.conf文件,设置密码

requirepass: 1234

3、运行容器

docker run \--name redis \-p 6379:6379 \-v redis-data:/data \-v /home/redis/redis.conf:/etc/redis/redis.conf \-e REDIS_PASSWORD=1234 \-d redis redis-server /etc/redis/redis.confdocker run --name redis -p 6379:6379 -v redis-data:/data -v /home/redis/redis.conf:/etc/redis/redis.conf -e REDIS_PASSWORD=1234 -d redis redis-server /etc/redis/redis.conf

nginx

1、创建挂载数据卷

# 存放conf.d/* nginx.conf等配置文件
mkdir -p /home/nginx
# 存放dist
mkdir -p /home/xrc/nginx
# 存放后端uploads文件

2、先将一个nginx容器的配置文件复制到宿主机数据卷

docker run --name nginx -p 9001:80 -d nginxdocker cp nginx:/etc/nginx /home/nginx

在 /home/nginx/conf.d/default.conf 文件中修改你的配置

以下是我的配置修改

server {listen       80;  listen  [::]:80;  server_name  localhost;  #access_log  /var/log/nginx/host.access.log  main;  location / {  try_files $uri $uri/ /index.html;root   /usr/share/nginx/html;  index  index.html index.htm;  }  # 将/api下的请求转发到后端  location /api/ {  proxy_pass http://127.0.0.1:8080/api/;proxy_set_header Host $host;  proxy_set_header X-Real-IP $remote_addr;  proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;  proxy_set_header X-Forwarded-Proto $scheme;  # rewrite ^/api/(.*)$ /$1 break;  }  location /uploads/ {alias /opt/gvb/server/uploads/;}error_page   500 502 503 504  /50x.html;  location = /50x.html {  root   /usr/share/nginx/html;  }  
}

3、删除原来的容器,并运行一个新的nginx容器

如果你nginx配置转发后端的api服务的ip地址写的是127.0.0.1,那么就最好指定网络模式--netword host,否则容器默认使用bridge模式,这样会导致转发指定的127不会是宿主机,而是本nginx容器,但是后端服务又不在nginx容器里面,而是在宿主机中,所以我这里指定了host网络模式,通常是不需要指定-p端口映射的,而是直接与宿主机关联

docker rm nginxdocker run -d \--name nginx \-v /home/nginx/conf.d:/etc/nginx/conf.d \-v /home/nginx/nginx.conf:/home/nginx/nginx.conf \-v /home/xrc/nginx/dist:/usr/share/nginx/html \-v /www/server/go_project/gvb_ser/uploads:/opt/gvb/server/uploads \--network host \--restart=always \nginx

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.hqwc.cn/news/909536.html

如若内容造成侵权/违法违规/事实不符,请联系编程知识网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

LeetCode刷题-动态规划-爬楼梯

LeetCode刷题-动态规划-爬楼梯 题目: 假设你正在爬楼梯。需要 n 阶你才能到达楼顶。 每次你可以爬 1 或 2 个台阶。你有多少种不同的方法可以爬到楼顶呢? 示例 1: 输入:n = 2 输出:2 解释:有两种方法可以爬到楼顶。1 阶 + 1 阶 2 阶 示例 2:输入:n = 3 输出:3 解释:有…

【攻防世界】Hidden-Message

⭕、知识点 流量分析/端口号隐写/tshark/json文件处理 一、题目二、解法 1、端口号个位呈现有规律的01交替,可能隐藏信息。 2、为便于提取信息,使用kali的tshark对其进行转存 tshark -r input.pcap -T json > output.txt注意在使用tshark时应避免使用root账户 否则会出现如…

022 props组件交互

.vue 的文件,就是一个组件,每个.vue 文件就是每个页面html 的时候,每个页面都是一个 htmlvue2 和 vue3 的生命周期钩子是不同的components:常用的组件,公共的组件views:用来存放页面的新建项目,删除HelloWorld.vue components也删除views删除 这个index.js删除 这两页面…

客户端打开BI报表提示 Your current browser is not supported”

win7的打开会报这个问题, win11可以正常打开, 应该是环境差异导致。

Linux-常用命令(3)

Linux-常用命令(3)Linux常用命令 查看文件 cat命令 cat命令可以创建一个或者多个文件、查看文件内容、连接文件,常用于查看文件内容 cat 文件名 //显示文件内容 cat -n 文件名 //显示文件内容,并显示行号 cat - 文件名 //显示文件内容(包括不可见字符)系统时间 date命令…

【EI】机器人与传感器网络国际会议(RoSeN 2025)

第一届机器人与传感器网络国际会议(RoSeN 2025)将于2025年5月16-18日在贵阳举行,会议将围绕机器人展开的在机器人、人机交互、传感、智能控制等相关研究领域,邀请国内外数位在此领域学术卓越的学者专家做相关致辞与报告,共同探讨机器人发展最新发展方向及行业前沿动态。会…

[转]玩客云刷armbian后根目录扩展

地址:玩客云刷armbian后根目录扩展_IT码迹最近拼夕夕搞了个玩客云,自己懒得刷机(太麻烦,还要绝育什么的)所以直接买的刷好的,商家送了个U盘32G已经做好了镜像。 商家镜像刷了不少东西除了openwrt,其他几个docker镜像都是armbian比较好用的。不过在我要安装其他插件的时候发…

生成未来:解码智能技术驱动的产业革命

在人工智能浪潮的推动下,AI生图与视频技术正以惊人的速度重塑人类的生产方式。从一张图片的生成到一段视频的秒级渲染,技术的突破不仅解放了生产力,更催生了全新的商业生态。这场变革的核心,在于用算法替代重复劳动,以智能激发无限创意,而这一切仅仅是开端。 一、技术突破…

云终端远程自动调用开关机功能

云桌面项目由于缺少一键关机和开机功能,通过Linux实现自动化调用开机和关机 1、收集所有终端信息的MAC地址收集方式可以采用ipscan25.exe也可以通过cmd下arp -a方式收集MAC地址,同时记录MAC可以IP地址的对应关系。2、所有终端安装openssh使用系统自带或者下载OpenSSH-Win64-v…

20242801 2024-2025-2 《网络攻防实践》第5次作业

一、实验内容 ​ 配置linux系统防火墙,并设置相关过滤规则;使用snort入侵检测工具进行离线扫描,并分析生成的报警日志。分析Honeywell的防火墙和IDS/IPS配置规则。 二、实验过程 (一)防火墙配置 1、过滤ICMP包 ​ ping命令通过设置icmp实现,所以我们使用ping命令来验证li…

“电脑玩手机神器Scrcpy!投屏/录屏/打游戏,1分钟搞定安装教程”

前言 什么是 Scrcpy?Scrcpy 是一款开源的 Android 屏幕镜像与控制工具,由 Genymobile 开发。它可以通过 USB 或 WiFi 将 Android 设备的屏幕实时显示到电脑上,并允许通过电脑的键盘和鼠标直接操作 Android 设备。 scrcpy 能帮你干啥?在电脑上玩手机——刷抖音、打游戏、聊微…

项目架构(下)--- 整合编写框架具体代码

项目结构 新建一个项目文件夹 通过 prisma init --datasource-provider mysql 构建prisma项目 代码编写main.tsimport "reflect-metadata"; import { InversifyExpressServer } from "inversify-express-utils"; import { Container } from "inversi…