当前位置: 首页 > news >正文

docker nginx mysql redis

启动没有数据卷的nginx
docker run -d -p 86:80 --name my-nginx nginx
把/etc/nginx中的配置复制到宿主机
docker cp my-nginx:/etc/nginx /home/nginxlkl

把/html 中的文件复制到宿主机
docker cp my-nginx:/etc/nginx /home/nginxlkl
删除当前镜像
docker rm -f my-nginx
重新起带数据卷的nginx
docker run -d --name my-nginx -v /home/nginxlkl/nginx:/etc/nginx -v /home/nginxlkl/html:/usr/share/nginx/html  -p 86:80 -d nginx:latest
修改nginx 配置文件需要重启
docker restart   my-nginx
    location  /gateway {rewrite  ^.+pers/?(.*)$ /$1 break;include  uwsgi_params;proxy_pass  http://ip:port;proxy_set_header x-forwarded-for  $remote_addr;}location /api {proxy_pass  http://ip:port;rewrite  ^/api/(.*)$ /$1 break;}
在这里插入代码片

mysql

安装前的思考
我们知道,容器如果不对数据做持久化(挂载数据卷),那么容器一旦重启或者删除,数据也就消失。所以我们要对MySQ数据做持久化,也就是挂载数据卷
之前在物理机上安装过MySQL的小伙伴都知道,安装完成后,我们要修改基本的配置,主要是编码。而如果要在容器内修改,那么容器删除后,配
vim my.cnf
[mysql]
default-character-set = utf8mb4[mysqld]
character-set-client-handshake = FALSE
character-set-server = utf8mb4
collation-server = utf8mb4_unicode_ci
init_connect=‘SET NAMES utf8mb4’

并把这个文件放到/data/mysql/conf下。
在这里插入图片描述

3.3 运行MySQL容器

docker run -d -p 3306:3306 --privileged=true -v /data/mysql/log:/var/log/msql -v /data/mysql/data:/var/lib/mysql -v /data/mysql/conf:/etc/mysql/conf.d -e MYSQL_ROOT_PASSWORD=123456 --name mysql5.7 mysql:5.7.44

新建本地挂载配置文件夹(位置随意)
1、创建文件夹(位置随意):data、conf

redis 默认配置只能够本地连接、不能进行远程访问需要手动挂载 redis 配置文件
mkdir -p /root/docker/redis/datamkdir -p /root/docker/redis/conf
sudo mkdir -p /mydata/redis/confsudo touch /mydata/redis/conf/redis.conf

2、新增配置文件:redis.conf

redis 配置文件挂载:以配置文件方式启动redis 容器
挂载:将宿主的文件和容器内部目录相关联、相互绑定、在宿主机内修改文件的话也随之修改容器内部文件

创建文件:

sudo touch /mydata/redis/conf/redis.conf

redis.conf内容配置:

#bind 127.0.0.1 //允许远程连接
protected-mode no
appendonly yes //持久化
requirepass 2419 //密码 

3、挂载redis 的持久化文件(为了数据的持久化)

配置文件:liunx 下redis.conf文件位置: /home/redis/myredis/redis.confliunx 下redis的data文件位置 : /home/redis/myredis/data位置随便选择
不存在就直接创建/home/redis/myredis 文件夹:命令:mkdir -p /home/redis/myredis

创建/启动Redis容器(创建镜像实例)

docker run --name my_redis -p 6379:6379 \ 
-v /root/docker/redis/data:/data \ 
-v /root/docker/redis/conf/redis.conf:/etc/redis/redis.conf \ 
-d redis redis-server /etc/redis/redis.conf

java
在这里插入图片描述
dockerfile

FROM openjdk:11-jdk
ENV BASE_PATH=/api
WORKDIR $BASE_PATH
# 将宿主机上的 ssm-docker-0.0.1-SNAPSHOT.jar 移动到 /cyk/apps 目录下并改名为 apps.jar
ADD app.jar $BASE_PATH/apps.jar
EXPOSE 7005
ENTRYPOINT ["java", "-jar"]
CMD ["apps.jar"]
docker build -t spring1 .
docker run -t -d -p 7008:7005  spring1
http://www.lryc.cn/news/395224.html

相关文章:

  • Linux系统(CentOS)安装iptables防火墙
  • 华为的服务器创新之路
  • 对比service now和salesforce
  • 树状数组
  • 【北京迅为】《i.MX8MM嵌入式Linux开发指南》-第一篇 嵌入式Linux入门篇-
  • ansible常见问题配置好了密码还是报错
  • python-课程满意度计算(赛氪OJ)
  • 6、Redis系统-数据结构-05-整数
  • STM32学习历程(day5)
  • 格蠹汇编阅读理解
  • 深入探索:scikit-learn中递归特征消除(RFE)的奥秘
  • 240708_昇思学习打卡-Day20-MindNLP ChatGLM-6B StreamChat
  • lua入门(2) - 数据类型
  • dify/api/models/provider.py文件中的数据表
  • 从入门到精通:网络基础详解
  • 初步理解三__《面向互联网大数据的威胁情报 并行挖掘技术研究》
  • 【C++修行之道】string类的使用
  • 云原生监控-Kubernetes-Promethues-Grafana
  • MySQL高级----InnoDB引擎
  • Docker定时清理
  • mysql之导入测试数据
  • WPScan漏洞扫描工具的介绍及使用
  • 基于单片机的饲料搅拌机控制系统设计
  • Mysql笔记-v2
  • Java SpringBoot MongoPlus 使用MyBatisPlus的方式,优雅的操作MongoDB
  • 【易捷海购-注册安全分析报告】
  • antd+vue——实现table组件跨页多选,已选择数据禁止第二次重复选择
  • Python采集京东标题,店铺,销量,价格,SKU,评论,图片
  • 数据中台指标管理系统
  • 什么是ThreadLocal以及内存泄漏问题、hash冲突问题