M1下Docker安装常用软件汇总
1、Docker安装Nacos
下载支持M1版本的Nacos,这里以zhusaidong/nacos-server-m1:2.0.3
为例 下载nacos
docker pull zhusaidong/nacos-server-m1:2.0.3
复制代码
拷贝出Nacos容器内的配置文件并修改(如果不使用Mysql可以跳过)
docker container cp nacos:/home/nacos/conf .
复制代码
需要修改的内容如下
# spring
......
# 使用Mysql平台
spring.datasource.platform=mysql
......
db.url.0=jdbc:mysql://host.docker.internal:3306/nacos-config?characterEncoding=utf8&connectTimeout=1000&socketTimeout=3000&autoReconnect=true&useSSL=false
# 这里使用的是单机版 注释掉db.url.1
#db.url.1=jdbc:mysql://${MYSQL_SERVICE_HOST}:${MYSQL_SERVICE_PORT:3306}/${MYSQL_SERVICE_DB_NAME}?${MYSQL_SERVICE_DB_PARAM:characterEncoding=utf8&connectTimeout=1000&socketTimeout=3000&autoReconnect=true&useSSL=false}
# 配置mysql账户
db.user=root
db.password=123456
......
复制代码
启动容器
docker run --name nacos \
-e MODE=standalone \
-e JVM_XMS=512m \
-e JVM_XMX=512m \
-e JVM_XMN=256m \
-p 8848:8848 \
-p 9848:9848 \
-v /Users/leron/dockerData/nacos/logs:/home/nacos/logs \
-v /Users/leron/dockerData/nacos/conf:/home/nacos/conf \
-d zhusaidong/nacos-server-m1:2.0.3
复制代码
2、Docker 安装Redis
官方版支持M1,直接使用即可 下载redis
docker pull redis
复制代码
在官网下载配置文件并移动到挂载目录下(不需要以配置文件启动跳过) 例如
mv ./redis.conf /Users/leron/dockerData/redis
复制代码
以配置文件的方式启动
docker run -d --privileged=true \
-p 6379:6379 \
-v/Users/leron/dockerData/redis/redis.conf:/etc/redis/redis.conf \
--name redis redis:latest redis-server /etc/redis/redis.conf --appendonly yes
复制代码
3、Docker安装Mysql
官方版支持M1,直接使用即可 下载mysql
docker pull mysql/mysql-server
复制代码
启动并将数据文件挂载到本地
docker run -d -p 3306:3306 \
-v /Users/leron/dockerData/mysql/conf:/etc/mysql/conf.d \
-v /Users/leron/dockerData/mysql/data:/var/lib/mysql \
-e MYSQL_ROOT_PASSWORD=123456 \
--name mysql mysql/mysql-server:latest
复制代码
4、Docker安装Nginx
官方版支持M1,直接使用即可 下载nginx
docker pull nginx
复制代码
启动一个容器 本次启动只是为了拷贝出其配置文件
docker run -p 80:80 --name nginx -d nginx:1.10
复制代码
将容器内的配置文件拷贝到挂载目录
docker container cp nginx:/etc/nginx /Users/leron/dockerData/nginx
复制代码
终止并删除原容器
docker stop nginx
docker rm 容器id
#或者使用dockerDesktop直接删除
复制代码
创建新的 nginx;执行以下命令
docker run -p 80:80 —name nginx \
-v /Users/leron/dockerData/nginx/html:/usr/share/nginx/html \
-v /Users/leron/dockerData/nginx/logs:/var/log/nginx \
-v /Users/leron/dockerData/nginx/conf:/etc/nginx \
-d nginx:latest
复制代码
5、Docker安装RabbitMq
下载RabbitMq
docker pull rabbitmq:management
复制代码
运行
docker run -d --hostname my-rabbit --name rabbit -p 15672:15672 -p 5672:5672 rabbitmq:management
复制代码
使用默认账号密码登录即可(guest , guest)
6、Docker安装Elasticsearch
官方版支持M1,直接使用即可 下载Elasticsearch
docker pull elasticsearch:7.14.1
复制代码
创建挂载目录 config data plugins 配置elasticsearch.yml
echo http.host: 0.0.0.0 > elasticsearch.yml
复制代码
启动容器
docker run --name elasticsearch -p 9200:9200 -p 9300:9300 \
-e "discovery.type=single-node" \
-e ES_JAVA_OPTS="-Xms64m -Xmx512m" \
-v /Users/leron/dockerData/Elasticsearch/config/elasticsearch.yml:/usr/share/elasticsearch/config/elasticsearch.yml \
-v /Users/leron/dockerData/Elasticsearch/data:/usr/share/elasticsearch/data \
-v /Users/leron/dockerData/Elasticsearch/plugins:/usr/share/elasticsearch/plugins \
-d elasticsearch:7.14.1
复制代码
7、Docker安装Kibana
下载Kibana
docker pull kibana:7.14.1
复制代码
启动Kibana
docker run --name kibana -e ELASTICSEARCH_HOSTS=http://host.docker.internal:9200 -p 5601:5601 \
-d kibana:7.14.1
复制代码
说明: host.docker.internal 是访问宿主机ip的一种方式 这儿不过多介绍