首页 > 其他分享 >常用docker 配置2023

常用docker 配置2023

时间:2023-12-15 18:11:52浏览次数:32  
标签:常用 -- 2023 nginx conf mysql home docker


https://docs.docker.com/engine/install/ubuntu/
安装 Docker 引擎
编辑配置文件
/mysql/conf/my.cnf
[mysql]
#设置mysql客户端默认字符集
default-character-set=UTF8MB4
[mysqld]
#设置3306端口
port=3306
#允许最大连接数
max_connections=200
#允许连接失败的次数
max_connect_errors=10
#默认使用“mysql_native_password”插件认证
default_authentication_plugin=mysql_native_password
#服务端使用的字符集默认为8比特编码的latin1字符集
character-set-server=UTF8MB4
#开启查询缓存
explicit_defaults_for_timestamp=true
#创建新表时将使用的默认存储引擎
default-storage-engine=INNODB
#等待超时时间秒
wait_timeout=60
#交互式连接超时时间秒
interactive-timeout=600

出错处理
systemctl restart docker

sudo lsof -i :3306
flush privileges;
ALTER USER 'root'@'%' IDENTIFIED WITH mysql_native_password BY 'master$1234';
flush privileges;


docker run -d -p 3306:3306 \
--net bind --ip 172.19.0.103 \
--name mysql \
--restart=always \
-e TZ=Asia/Shanghai \
-e MYSQL_ROOT_PASSWORD=master$1234 \
-v /mysql/conf/my.cnf:/etc/mysql/conf.d/my.cnf \
-v /mysql/logs:/logs \
-v /mysql/data:/var/lib/mysql \
--privileged=true \
mysql

docker cp mysql:/etc/mysql/my.cnf /mysql/conf
docker exec mysql cat /etc/mysql/my.cnf

use mysql
update user set Host='%' where User='root';

 

//********************redis*******************

firewall-cmd --zone=public --add-port=6379/tcp --permanent
systemctl restart firewalld.service
firewall-cmd --list-ports

docker run --name redis -p 6379:6379 \
--net bind --ip 172.19.0.104 \
--restart=always \
-v /redis/conf/redis.conf:/etc/redis/redis.conf \
-v /redis/data:/data -d redis

//********************nginx**********************

 

1.创建挂载目录

mkdir -p /home/nginx/conf \
mkdir -p /home/nginx/log \
mkdir -p /home/nginx/html \
mkdir /home/pre_server -p \

 

1、拉取镜像
docker pull nginx
2、启动nginx容器
docker run --restart=always --name=nginx -p 80:80 -d nginx
3、访问测试
访问地址:http://ip+port


5、复制配置文件到宿主机器

# 将容器nginx.conf文件复制到宿主机

docker cp nginx:/etc/nginx/nginx.conf /home/nginx/conf/nginx.conf

# 将容器conf.d文件夹下内容复制到宿主机

docker cp nginx:/etc/nginx/conf.d /home/nginx/conf/conf.d

# 将容器中的html文件夹复制到宿主机

docker cp nginx:/usr/share/nginx/html /home/nginx/

 

 


6、创建前端工程挂载目录
该目录的好处在于,上传新的前端项目后,不用重新启动nginx,只需要修改nginx.conf配置
mkdir /home/pre_server -p
7、删除之前建立的nginx
docker stop nginx
docker rm nginx
8、挂载启动nginx容器

docker run --restart=always \
-p 80:80 \
--name nginx \
-v /home/nginx/conf/nginx.conf:/etc/nginx/nginx.conf \
-v /home/nginx/conf/conf.d:/etc/nginx/conf.d \
-v /home/nginx/log:/var/log/nginx \
-v /home/nginx/html:/usr/share/nginx/html \
--privileged=true -d nginx:latest

 

9、测试访问

为了更好的验证,容器是已挂载的方式进行启动,我们修改html 下的代码

cd /nginx/html
# 编辑index.html
vim index.html

10、验证pre_home目录
我们将html下的index.html拷贝到/nginx/pre_server下,并且配置nginx.conf文件,再重启nginx,
也可以自己上传,自定义的前端工程到/nginx/pre_server下

11、修改nginx.conf:
vim /nginx/conf/nginx/conf.d/default.conf

添加配置:

location /crb {
alias /nginx/pre_server;
index index.html;
}

# 12、修改配置nginx配置文件后加载
docker exec 容器id nginx -t
docker exec 容器id nginx -s reload

13、测试访问:

访问地址:ip+port/crb

14、总结
通过docker搭建nginx;
实现自定义目录挂载,方便配置文件的修改;
通过pre_home目录管理前端工程,使多个项目时,不用新建nginx容器挂载新的工程目录;

标签:常用,--,2023,nginx,conf,mysql,home,docker
From: https://www.cnblogs.com/zhyp/p/17903935.html

相关文章

  • 2023.12.10-2023.12.23北京游记+总结
    Day6今天打了一场模拟赛T1:推出性质:每一个色块之间间隔大于\(k\),每一个色块中必然存在一个等于\(k\)的色段然后,不会用,想到计数问题一般直接推出式子或者\(dp\),看到这里的\(n\le10^{18}\),果断选择放弃\(dp\),推半天组合数ing最后打一个\(n^2\)的吧,......
  • 2023-12-15
    packagecom.example.backendmanage.controller;importcn.hutool.core.io.IoUtil;importcn.hutool.core.util.StrUtil;importcn.hutool.http.server.HttpServerResponse;importcn.hutool.poi.excel.ExcelReader;importcn.hutool.poi.excel.ExcelUtil;importcn.hu......
  • 快速打印docker容器日志
    有的时候需要在服务器上查看日志信息。往往敲命令又太多,觉得麻烦,所以写了一个这个脚本。赋权之后,这个脚本里面丢到/usr/local/bin/下面。就可以在任何地方使用lgs,然后输入容器部分的名字。如果有多个输入序号就可以打印日志啦。#/bin/bashread-p"entername:"contain......
  • 基于Lighthouse安装docker
    1.前言 在此之前小编通过各种方式介绍过自己通过服务器搭建的一些玩法,也写过一些教程,但是那些教程,现在回头来看,都是有些杂乱了,统一性不强。我就准备重新整理一下之前写的文章,并且准备重新开一个专题来写自己折腾的内容,专题的名字就叫-原来服务器这么有用。也希望大家多多提意......
  • docker部署redis主从集群
    1、创建数据目录(logs目录要给权限,要不然会报错)mkdir-pv/data/redis/(data,logs}chmod777/data/redis/logs2、redis.conf配置文件-—-主从配置master节点配置cd/data/redisvimredis.confport6379bind0.0.0.0daemonizenoprotected-modenorequirepass123......
  • 红帽认证RHCE9.0版本2023年12月的红帽9.0RHCE9版本RHCSA考试题⽬+考试答案,本人已过,全
     translatorAfrikaansAlbanian-shqipeArabic-‎‫العربية‬‎Armenian-ՀայերէնAzerbaijani-azərbaycancaBasque-euskaraBelarusian-беларускаяBengali-বাংলাBulgarian-българскиCatalan-catalàChi......
  • 开源组件DockerFIle老是Build失败,如何解决
    推荐把外网地址替换为国内高速镜像#替换源地址http://dl-cdn.alpinelinux.org/alpine===https://mirrors.aliyun.com/alpinehttps://repo1.maven.org/maven2=====https://maven.aliyun.com/repository/public#goinstall代理proxy.golang.orggoenv-wGO11......
  • 2023-12-15
    一、公司需求:一个设备接入平台。这里使用开源的thingspanel。二、平台部署:购买Linux服务器,使用Docker容器从官网拉取源码一键部署。三、Docker部署前端程序:1.下载官网Front-end程序源码,VScode安装npm编译生成dist目录。2.用WinSCP工具通过scp上传dist文件到Linux服务器。3......
  • 美洽获评2023中国软件技术最佳AIGC应用奖,助力智能客服创新发展
    12月15日,由中国科学院软件研究所、中科软科技股份有限公司联合主办的“2023中国软件技术大会”在北京举行。作为软件领域的年度盛事,“中国软件技术大会”已经成功举办20届。本次大会以“大模型驱动下的软件变革”为主题,聚焦于生成式AI等前沿技术对软件行业的影响。古人云:“穷则变,变......
  • 2023.12.15日报
    今天主要是实现了一个简单的问卷页面,这个页面做来很艰难,因为存在各种各样的依赖版本不兼容的问题另外,还有引用的路径问题,我一开始确实没想到,仅仅因为一个图标引入存在问题就导致整个页面空白这让我对vue有了新的认识,放张图在下边 在左侧可以通过拖动实现添加不同种类的题目,在......