安装 Docker
# 1、卸载旧的版本
yum remove docker \
docker-client \
docker-client-latest \
docker-common \
docker-latest \
docker-latest-logrotate \
docker-logrotate \
docker-engine
# 2、需要的安装包
yum install -y yum-utils
# 3、设置镜像的仓库
yum-config-manager \
--add-repo \
http://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repo # 推荐使用阿里云
# 更新包的索引
yum makecache fast
# 4、安装docker相关的内容 docker-ce社区版
yum install docker-ce docker-ce-cli containerd.io
# 5、启动docker
systemctl start docker
# 6、使用docker version检测是否安装成功
docker version
-------------------------------------------------------
# 阿里云镜像加速
sudo mkdir -p /etc/docker
sudo tee /etc/docker/daemon.json <<-'EOF'
{
"registry-mirrors": ["https://tj4w9gpw.mirror.aliyuncs.com"]
}
EOF
sudo systemctl daemon-reload
sudo systemctl restart docker
安装 docker-compose
- 下载 Docker Compose
curl -L https://get.daocloud.io/docker/compose/releases/download/1.25.5/docker-compose-`uname -s`-`uname -m` > /usr/local/bin/docker-compose
- 修改该文件的权限为可执行
chmod +x /usr/local/bin/docker-compose
- 查看是否已经安装成功
docker-compose --version
- docker-compose 文件
version: '3'
services:
mingweb:
build: .
restart: always
image: mingweb1.0
ports:
- "8080:8080"
depends_on:
- mysql
- redis
- rabbitmq
- elasticsearch
mysql:
image: mysql:8.0
container_name: mysql
command:
--default-authentication-plugin=mysql_native_password
--character-set-server=utf8mb4
--collation-server=utf8mb4_general_ci
--explicit_defaults_for_timestamp=true
--lower_case_table_names=1
# data 用来存放了数据库表文件,init存放初始化的脚本
volumes:
- /data/docker_file/mysql/data/:/var/lib/mysql/
- /data/docker_file/mysql/conf/my.cnf:/etc/my.cnf
- /data/docker_file/mysql/init:/docker-entrypoint-initdb.d/
restart: always
ports:
- "3306:3306"
environment:
TZ: Asia/Shanghai
MYSQL_ROOT_PASSWORD: root123
redis:
image: redis
container_name: redis
# 优先使用命令行参数,期次是redis.conf中的参数
command: redis-server /usr/local/etc/redis/redis.conf --requirepass "root123"
restart: always
volumes:
- /data/docker_file/redis/data:/data
- /data/docker_file/redis/data/redis.conf:/usr/local/etc/redis/redis.conf
ports:
- "6379:6379"
rabbitmq:
hostname: rabbitmq-standalone
image: rabbitmq:3.8.7-management
container_name: rabbitmq
environment:
- RABBITMQ_DEFAULT_USER=root
- RABBITMQ_DEFAULT_PASS=root123
restart: always
volumes:
- /data/docker_file/rabbitmq/data:/var/lib/rabbitmq
ports:
- "15672:15672"
- "5672:5672"
logging:
driver: "json-file"
options:
max-size: "200k"
max-file: "10"
elasticsearch:
image: elasticsearch:7.0.0
container_name: elasticsearch
restart: always
environment:
- discovery.type=single-node
- cluster.name=elastic-pro
- http.cors.enabled=true
- http.cors.allow-origin=*
- "ES_JAVA_OPTS=-Xms512m -Xmx512m"
ulimits:
memlock:
soft: -1
hard: -1
volumes:
- /data/docker_file/elasticsearch/data:/usr/share/elasticsearch/data
- /data/docker_file/elasticsearch/plugins:/usr/share/elasticsearch/plugins
ports:
- 9200:9200
- 9300:9300
minio:
image: minio/minio
container_name: minio
restart: always
volumes:
- /data/docker_file/minio/data:/data
- /data/docker_file/minio/minio:/minio
- /data/docker_file/minio/config:/root/.minio
environment: # 设置环境变量,相当于docker run命令中的-e
TZ: Asia/Shanghai
LANG: en_US.UTF-8
MINIO_PROMETHEUS_AUTH_TYPE: "public"
MINIO_ACCESS_KEY: "root" # 登录账号
MINIO_SECRET_KEY: "root123456" # 登录密码
command: server /data
logging:
driver: "json-file"
options:
max-size: "100m"
ports: # 映射端口
- "9000:9000"
- "42330:42330"
- 构建镜像
docker-compose build
- 运行服务
docker-compose up -d (加-d的话就是后台运行)
docker-compose 基本命令汇总
- 卸载docker-compose
sudo rm /usr/local/bin/docker-compose
- 停止所有正在运行的相关容器
docker-compose stop
# 可以通过该命令再次启动
docker-compose start
- 停用移除所有容器以及网络相关
docker-compose down
在CentOS中创建新用户,幷授权
出于安全考虑,elasticsearch默认不允许以root账号运行
- 创建一个用户名:ming
adduser ming
- 为这个用户初始化密码
passwd ming
- 添加w权限
chmod -v u+w /etc/sudoers
- 在下面的一行下追加新增的用户,wq保存退出
vim /etc/sudoers
## Allow root to run any commands anywher
root ALL=(ALL) ALL
ming ALL=(ALL) NOPASSWD: ALL
- 将写权限收回
chmod -v u-w /etc/sudoers
解决普通用户连接不上 docker-compose 的问题
# 输入完命令后,重启XShell客户端
sudo groupadd docker
sudo usermod -aG docker $USER
elasticsearch 的挂载目录开启权限
sudo chmod 777 /data/docker_file/elasticsearch/data
sudo chmod 777 /data/docker_file/elasticsearch/plugins
- 如果用 IK 分词器的话,直接将解压后的文件放入到挂载目录 /data/docker_file/elasticsearch/plugins 下,重启生效
过程中自己使用到的 Linux 命令
- Linux 里查看所有用户: cat /etc/passwd |cut -f 1 -d :
- 查看当前用户: whoami
- 切换用户: su 用户名

122

被折叠的 条评论
为什么被折叠?



