目录
一、Linux环境配置
二、Docker、docker-compose
1、docker安装
2、Docker-Compose 安装
1、基于docker-compose安装nacos、redis、mysql、rabbitmq、pgsql
2、执行命令
3、配置openjdk:8
4、配置自己的项目
5、nacos无默认密码问题
一、Linux环境配置
1、配置静态IP
wondows+r,输入cmd——》ipconfig
Linux上输入cd /etc/sysconfig/network-scripts,然后vi ifcfg-ens33
然后,重启网络 service network restart
2、配置yum源
1.先安装 wget
yum install wget -y
2.备份旧的 yum源
mv /etc/yum.repos.d/CentOS-Base.repo /etc/yum.repos.d/CentOS-Base.repo_bak
3.获取阿里yum源配置文件
wget -O /etc/yum.repos.d/CentOS-Base.repo http://mirrors.aliyun.com/repo/Centos-7.repo
4.更新缓存
yum makecache
5. 查看
yum -y update
3、查询端口号占用情况
# 想使用指定的命令需要事先下载netstat
yum -y install net-tools
# 查看端口号占用情况
netstat -naop | grep 端口号
# 强制关闭某个进程,不要随意使用
kill -9 进程id
4、解压缩
tail [-f] 文件名:查看实时文件内容,主要用来查看日志内容
需要按下control+c结束命令
tar [-zxcvf] 压缩文件名 目录:生成压缩文件或者是解码
tar -zcvf a.tar.gz a:把目录a生成压缩文件
tar -zxvf a.tar.gz :解压到当前目录
解释参数:
z:压缩文件 .tar.gz,不能省略
c:生成,和x对立
v:过程,显示生成过程或者压缩过程,可以省略
x:解压,和c对立
f:文件,压缩文件名,不能省略
解压的通用命令:
tar -zxvf 压缩文件名.tar.gz :解压文件
压缩的通用命令:
tar -zcvf 压缩文件名.tar.gz 对应目录:生成压缩文件
5、基于Linux搭建环境
待更新.............
二、Docker、docker-compose
1、docker安装
Docker的核心概念:
1.镜像(image):一堆软件的集合,Docker中的镜像,会包含软件安装包本身,还有依赖的其他软件安装包
比如:Tomcat镜像=Tomcat软件的安装包+JDK安装包+JDK自动配置
2.容器(container):通过镜像安装之后的东西,软件
3.数据卷(Data Volumes):磁盘,虚拟的
4.网络(Network):网络,每个容器都有自己的ip和端口
5.仓库(Repository):存储镜像的地方
1、下载docker引擎
curl -sSL https://get.daocloud.io/docker | sh
或者 curl -fsSL https://get.docker.com | bash -s docker --mirror Aliyun
· 2、验证是否安装成功
docker version
3、操作Docker
启动服务
systemctl start docker
停止服务
systemctl stop docker
重启服务
systemctl restart docker
查看服务状态
systemctl status docker
注意: Docker下载的镜像,默认是从国外服务器下载慢,所以实际中配置镜像加速器
配置步骤:
1、新增docker配置
vim /etc/docker/daemon.json
输入以下内容:
{
"registry-mirrors": [
"https://registry.docker-cn.com"]
}
2、重新加载配置
systemctl daemon-reload
3、重启Docker服务
systemctl restart docker
4、Docker命令
docker images:查看服务器的镜像文件
docker search 镜像名称:搜索仓库是否存在指定的镜像
docker pull 镜像名称:版本号:下载镜像,版本号可以省略,省略的话就是:latest
docker ps:查看运行的容器
docker ps -a:查看安装的所有容器
docker inspect 容器名称:查看容器详情
docker logs 容器名称:查看容器的运行日志
docker start 容器名称:启动容器
docker restart 容器名称:重新启动容器
docker stop 容器名称:停止容器
docker run:最常用的命令,创建并运行容器,如果对应镜像的不存在还会下载镜像
docker rm 容器名称:删除容器,但是容器必须停止
docker rmi 镜像名称:版本号:删除镜像
docker exec -it 容器名称 bash:进入到容器内部,虚拟机
docker system df:查看Docker所占磁盘
docker system prune:只删除停止的容器和没有版本的镜像
docker system prune -a:删除所有的停止的容器和镜像
5、基于Docker安装Tomcat
1.创建映射路径
mkdir -p /docker/tomcat/webapp8081
2.创建并运行Tomcat容器
docker run -d --name tomcat8081 -p 8081:8080 -v /docker/tomcat/webapp8081:/usr/local/tomcat/webapps/ tomcat:9.0.33
3.查看是否安装成功
docker ps
6、基于Docker安装Mysql
docker run -d --name mysql3306 -e MYSQL_ROOT_PASSWORD=123456 -p 3306:3306 mysql:5.7
7、基于Docker安装nacos
8、基于Docker安装RabbitMQ
创建并运行:
docker run -d --name rabbitmq -p15672:15672 -p 5672:5672 rabbitmq:management
注意:
15672:15672——>url地址
5672:5672——>yml配置端口
rabbitmq:management——>镜像
9、卸载docker
1、查看docker安装的依赖
yum list installed | grep docker
2、卸载所有依赖信息
yum -y remove docker-ce.x86_64
2、Docker-Compose 安装
1、下载
sudo curl -L "https://github.com/docker/compose/releases/download/1.29.2/docker-compose-$(uname -s)-$(uname -m)" -o /usr/local/bin/docker-compose
2、授权
sudo chmod +x /usr/local/bin/docker-compose
3、软连接
sudo ln -s /usr/local/bin/docker-compose /usr/bin/docker-compose
4、测试
docker-compose -version
1、基于docker-compose安装nacos、redis、mysql、rabbitmq、pgsql
- 创建docker-compose.yml文件,用于存储安装信息
version: "3.9"
services:
nacos:
image: nacos/nacos-server:v2.0.4
container_name: nacos-standalone-mysql
environment:
- PREFER_HOST_MODE=ip
- MODE=standalone
- SPRING_DATASOURCE_PLATFORM=mysql
- MYSQL_SERVICE_HOST=mysql
- MYSQL_SERVICE_DB_NAME=nacos
- MYSQL_SERVICE_PORT=3306
- MYSQL_SERVICE_USER=root
- MYSQL_SERVICE_PASSWORD=paswword
- MYSQL_SERVICE_DB_PARAM=characterEncoding=utf8&connectTimeout=1000&socketTimeout=3000&autoReconnect=true&useSSL=false
- NACOS_AUTH_ENABLE=true
- JVM_XMS=512m
- JVM_XMX=512m
- JVM_XMN=256m
volumes:
- /opt/env/nacos/logs/:/home/nacos/logs
- /opt/env/nacos/init.d/custom.properties:/home/nacos/init.d/custom.properties
depends_on:
- mysql
ports:
- 18848:8848
- 19848:9848
networks:
- app-tier
restart: always
postgres:
container_name: postgres
image: postgres:11.15
privileged: true
ports:
- 15432:5432
environment:
- POSTGRES_PASSWORD=password
- TZ=Asia/Shanghai
volumes:
- /opt/env/postgres/data:/var/lib/postgresql/data
networks:
- app-tier
restart: always
redis:
image: redis:6.2.6
container_name: redis
environment:
- TZ=Asia/Shanghai
- requirepass=password
ports:
- 16379:6379
command: ["redis-server","/etc/redis/conf/redis.conf"]
volumes:
- /opt/env/redis/conf:/etc/redis/conf
- /opt/env/redis/data:/data
networks:
- app-tier
restart: always
rabbitmq:
image: rabbitmq:3.9.14-management
hostname: rabbitmq
container_name: rabbitmq
ports:
- 15672:5672
- 15673:15672
environment:
- RABBITMQ_DEFAULT_USER=user
- RABBITMQ_DEFAULT_PASS=password
volumes:
- /opt/env/rabbitmq/data:/var/lib/rabbitmq/mnesia
- /opt/env/rabbitmq/config/rabbitmq.conf:/etc/rabbitmq/rabbitmq.conf
networks:
- app-tier
restart: always
o:
image: bitnami/minio:2022.4.1
container_name: minio
environment:
- MINIO_SERVER_HOST=minio
- MINIO_ROOT_USER=user
- MINIO_ROOT_PASSWORD=password
volumes:
- /opt/env/minio/data:/data
ports:
- 19000:9000
- 19001:9001
networks:
- app-tier
restart: always
zipkin:
image: openzipkin/zipkin:2.23
container_name: zipkin
environment:
- STORAGE_TYPE=mysql
- MYSQL_DB=zipkin
- MYSQL_USER=root
- MYSQL_PASS=password
- MYSQL_HOST=mysql
- MYSQL_TCP_PORT=3306
ports:
- 19411:9411
depends_on:
- mysql
networks:
- app-tier
restart: always
zipkin-dependencies:
image: openzipkin/zipkin-dependencies:2
container_name: zipkin-dependencies
entrypoint: crond -f
environment:
- STORAGE_TYPE=mysql
- MYSQL_DB=zipkin
- MYSQL_USER=root
- MYSQL_PASS=password
- MYSQL_HOST=mysql
- MYSQL_TCP_PORT=3306
depends_on:
- mysql
networks:
- app-tier
restart: always
mysql:
image: mysql:5.7.37
container_name: mysql
environment:
- MYSQL_ROOT_PASSWORD=password
- TZ=Asia/Shanghai
command: --default-authentication-plugin=mysql_native_password
volumes:
- /opt/env/mysql/data:/var/lib/mysql
- /opt/env/mysql/logs:/var/log/mysql
- /opt/env/mysql/init:/docker-entrypoint-initdb.d/
- /opt/env/mysql/config/my.cnf:/etc/my.cnf
ports:
- 13306:3306
networks:
- app-tier
restart: always
portainer:
image: portainer/portainer-ce:2.13.0
container_name: portainer
volumes:
- /var/run/docker.sock:/var/run/docker.sock
- /opt/env/portainer/data:/data
ports:
- 18000:8000
- 19443:9443
networks:
- app-tier
restart: always
nginx:
image: nginx:1.22.0
container_name: nginx
environment:
- TZ=Asia/Shanghai
volumes:
- /opt/env/nginx/templates:/etc/nginx/templates
ports:
- 80:80
- 443:443
networks:
- app-tier
restart: always
networks:
app-tier:
name: app-tier
driver: bridge
注意:不要忘记创建主机上的映射目录及配置文件
1、custom.properties配置文件(nacos)
官方配置nacso手册:
控制台手册
spring.security.enabled=true
management.security=true
security.basic.enabled=true
# 忽略的资源配置
nacos.security.ignore.urls=/,/**/*.css,/**/*.js,/**/*.html,/**/*.map,/**/*.svg,/**/*.png,/**/*.ico,/console-fe/public/**,/v1/auth/login,/v1/console/health/**,/v1/cs/**,/v1/ns/**,/v1/cmdb/**,/actuator/**,/v1/console/server/**
2、rabbitmq.conf配置文件
loopback_users.guest = false
listeners.tcp.default = 5672
default_user_tags.administrator = true
default_permissions.configure = .*
default_permissions.read = .*
default_permissions.write = .*
hipe_compile = false
management.listener.port = 15672
management.listener.ssl = false
3、my.cnf配置文件(mysql)
[mysqld]
user=mysql
default-storage-engine=INNODB
character-set-server=utf8
[client]
default-character-set=utf8
[mysql]
default-character-set=utf8
4、redis.conf配置文件
bind 0.0.0.0
port 6379
tcp-backlog 511
timeout 0
tcp-keepalive 0
protected-mode no
databases 16
requirepass redis@123
2、执行命令
docker-compose -f /usr/local/xxxx.yml up -d
此处基础环境配置完成。
3、配置openjdk:8
执行命令,拉取镜像
docker pull openjdk:8
4、配置自己的项目
1、生成的镜像
2、创建容器
个人补充:
1、对于nacos这些容器的配置文件,需要进入到容器内部进行查看,操作:docker exec -it nacos bash
2、对于权限受阻问题:/opt/bitnami/scripts/libminio.sh: line 316: /data/.root_user: Permission denied或者连接不上mysql的情况
基本是因为本地映射文件权限不够高,请设置:chmod 777/755 xxx
3、服务器配置问题(配置过高,但资源不够):造成容器正常启动,但浏览器不能启动
5、nacos无默认密码问题
naocs官网上面有新增nacos密码介绍,链接:控制台手册 (nacos.io)
文章来源:https://www.toymoban.com/news/detail-695408.html
文章来源地址https://www.toymoban.com/news/detail-695408.html
到了这里,关于基于docker-compose安装nacos、redis、mysql、rabbitmq、pgsql,并且上传自己的项目到portainer的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!