阿里云安装docker推荐命令
step 1: 安装必要的一些系统工具
sudo yum install -y yum-utils device-mapper-persistent-data lvm2
Step 2: 添加软件源信息
sudo yum-config-manager --add-repo http://mirrors.aliyun.com/doc...
Step 3: 更新并安装 Docker-CE
sudo yum makecache fast
sudo yum -y install docker-ce
Step 4: 开启Docker服务
sudo service docker start
Step 5: 开机自动启动docker
sudo systemctl enable docker
安装docker完成
添加docker镜像地址
sudo mkdir -p /etc/docker
sudo tee /etc/docker/daemon.json <<-'EOF'
{
"registry-mirrors": ["https://registry.docker-cn.com"],
"insecure-registries":["192.168.1.52:8082","192.168.1.52:8083"]
}
EOF
sudo systemctl daemon-reload
sudo systemctl restart docker
添加docker镜像地址END
安装wget
sudo yum install wget -y
安装ctop
sudo wget https://github.com/bcicen/cto... -O /usr/bin/ctop
sudo chmod +x /usr/bin/ctop
安装ctop完成
centos7关闭防火墙
chkconfig iptables off
chkconfig firewalld off
systemctl disable firewalld
创建并授权命令
mkdir -p /app/jar && chmod -R 777 /app/jar
Centos7 ip配置所在目录
cd /etc/sysconfig/network-scripts
vi /etc/sysconfig/network-scripts/ifcfg-ens33
初始化swarm管理
docker swarm init
加入swarm集群
docker swarm join --token xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
创建overlay网络
--attachable 允许其他容器连接
docker network create -d overlay --attachable --subnet=10.10.10.0/24 mynet
创建app目录
mkdir /app
创建minio专用文件目录
mkdir -p /app/minio/data
mkdir -p /app/minio/config
chmod -R 777 /app/minio/data
chmod -R 777 /app/minio/config
安装minio对象存储服务器
docker run -p 9010:9000 --name minio --restart=always -d -v /app/minio/data:/data -v /app/minio/config:/etc/minio -e "MINIO_ACCESS_KEY=admin" -e "MINIO_SECRET_KEY=song@123.HAIEN" minio/minio server --config-dir /etc/minio /data
创建mysql专用文件目录
mkdir -p /app/mysql
chmod -R 777 /app/mysql
mkdir -p /app/mysql_conf
chmod -R 777 /app/mysql_conf
安装mysql --net=host \
docker run -d \
-v /app/mysql:/var/lib/mysql \
-v /app/mysql_conf:/etc/mysql/mysql.conf.d \
-p 3306:3306 \
--restart=always \
--env MYSQL_ROOT_PASSWORD=123456 \
--name mysql \
mysql:5.7.25
Mysql MGR 配置脚本
install PLUGIN group_replication SONAME 'group_replication.so';
show variables like '%group%';
SET SQL_LOG_BIN=0;
CREATE USER repl@'%' IDENTIFIED BY 'repl';
GRANT REPLICATION SLAVE ON . TO repl@'%';
FLUSH PRIVILEGES;
SET SQL_LOG_BIN=1;
CHANGE MASTER TO MASTER_USER='repl', MASTER_PASSWORD='repl' FOR CHANNEL 'group_replication_recovery';
词句需要在mater上运行
set global group_replication_bootstrap_group=ON;
如果出现错误,log会提示设置以下语句,再执行start group_replication
set GLOBAL group_replication_allow_local_disjoint_gtids_join = on;
start group_replication;
select* from performance_schema.replication_group_members;
创建redis文件目录
mkdir -p /app/redis/
chmod -R 777 /app/redis/
复制预设的redis.conf配置文件到/app/redis目录
安装redis
docker run -d \
-p 6379:6379 \
--restart=always \
--name redis \
-v /app/redis/redis.conf:/data/redis.conf \
redis:alpine \
redis-server /data/redis.conf
创建MongoDB文件目录
mkdir -p /app/mongodb42/db
chmod -R 777 /app/mongodb42/db
安装MongoDB
docker run -d \
-p 27027:27017 \
-v /app/mongodb42/db:/data/db \
-e MONGO_INITDB_ROOT_USERNAME=admin \
-e MONGO_INITDB_ROOT_PASSWORD=123456 \
--name mongodb42 \
mongo:4.2
创建MongoDB文件目录
mkdir -p /app/mongodb42/db
mkdir -p /app/mongodb42/configdb
chmod -R 777 /app/mongodb42/db
chmod -R 777 /app/mongodb42/configdb
安装MongoDB
docker run -d \
--network host \
-v /app/mongodb42/db:/data/db \
-v /app/mongodb42/configdb:/data/configdb \
-v /etc/localtime:/etc/localtime:ro \
--name mongodb42 mongo:4.2 mongod -f /data/configdb/mongod.conf
进入mongodb容器
docker exec -it mongodb42 /bin/bash
登录mongodb
mongo --port 21177
切换到admin库
use admin
mongodb创建超级管理员命令
db.createUser(
{
user: "admin",
pwd: "123456",
roles: [ { role: "root", db: "admin" } ]
}
);
mongodb初始化复制集
rs.initiate(
{
_id: "rs",
configsvr: true,
members: [
{ _id : 0, host : "172.17.0.2:27019" },
{ _id : 1, host : "172.17.0.3:27019" },
{ _id : 2, host : "172.17.0.4:27019" }
]
}
)
mongodb启动log提示相关警告,可以执行以下语句
sudo echo "never" > /sys/kernel/mm/transparent_hugepage/enabled
sudo echo "never" > /sys/kernel/mm/transparent_hugepage/defrag
创建RabbitMQ文件目录
mkdir -p /app/rabbitmq
chmod -R 777 /app/rabbitmq/
安装RabbitMQ
docker run -d \
--restart=always \
-v /app/rabbitmq:/var/lib/rabbitmq \
-v /app/rabbitmq/rabbitmq.config:/etc/rabbitmq/rabbitmq.config \
-e RABBITMQ_DEFAULT_USER=admin \
-e RABBITMQ_DEFAULT_PASS=123456 \
-p 5672:5672 \
-p 8672:15672 \
--name rabbit \
rabbitmq:management
创建portainer目录
mkdir -p /app/portainer/data
chmod -R 777 /app/portainer/data
安装portainer管理工具
docker run -d \
-p 9000:9000 \
-v /app/portainer/data:/data \
-v /var/run/docker.sock:/var/run/docker.sock \
--name portainer \
--restart=always \
portainer/portainer
创建nginx目录
mkdir -p /app/nginx
mkdir -p /app/nginx/html
chmod -R 777 /app/nginx
安装nginx
-v /app/nginx:/etc/nginx \
-v /app/nginx/html:/usr/share/nginx/html \
-v /app/nginx/nginx.conf:/etc/nginx/nginx.conf:ro \
docker run -d \
-p 80:80 \
-p 443:443 \
-v /app/nginx:/etc/nginx \
-v /app/nginx/html:/usr/share/nginx/html \
-v /app/nginx/nginx.conf:/etc/nginx/nginx.conf:ro \
--restart=always \
--name nginx \
nginx:alpine
创建nexus3
mkdir -p /app/nexus-data
chmod -R 777 /app/nexus-data
安装nexus3
docker run -d --name nexus3 \
--restart=always \
-p 8081:8081 \
-p 8082:8082 \
-p 8083:8083 \
-p 8084:8084 \
-p 8085:8085 \
-v /app/nexus-data:/nexus-data \
sonatype/nexus3
创建gitla文件夹
mkdir -p /app/gitlab/config
mkdir -p /app/gitlab/logs
mkdir -p /app/gitlab/data
chmod -R 777 /app/gitlab
安装gitlab
docker run -d \
--network host \
--name gitlab \
--restart always \
--storage-opt dm.basesize=120G \
-v /app/gitlab/config:/etc/gitlab \
-v /app/gitlab/logs:/var/log/gitlab \
-v /app/gitlab/data:/var/opt/gitlab \
gitlab/gitlab-ce
**粗体** _斜体_ [链接](http://example.com) `代码` - 列表 > 引用
。你还可以使用@
来通知其他用户。