第一種方式:
-
sudo curl -L "https://github.com/docker/compose/releases/download/1.24.0/docker-compose-$(uname -s)-$(uname -m)" -o /usr/local/bin/docker-compose拉取鏡像
-
sudo chmod +x /usr/local/bin/docker-compose修改文件為可執(zhí)行
-
$ docker-compose --version查看docker-compose的版本
第二種方式:pip方式安裝docker-compose
-
rpm -ivh http://mirrors.aliyun.com/epel/7/x86_64/Packages/e/epel-release-7-11.noarch.rpm
安裝pip的EPEL源
-
yum -y install certbot libevent-devel gcc libffi-devel python-devel openssl-devel python-pip
安裝pip
-
pip install –-upgrade pip
升級pip
-
pip install -U docker-compose
安裝docker-compose
-
which docker-compose
查看安裝位置
docker-compose的yaml文件
文件內(nèi)容如下:
version: "3"
services:
mysql:
environment:
MYSQL_ROOT_PASSWORD: "root"
MYSQL_USER: 'root'
MYSQL_PASS: 'root'
image: "mysql:5.7"
volumes:
- "./data:/var/lib/mysql"
- "./conf/my.cnf:/etc/my.cnf"
ports:
- "3306:3306"
rabbitmq:
image: "rabbitmq:latest"
container_name: rabbitmq
environment:
- RABBITMQ_DEFAULT_USER=root
- RABBITMQ_DEFAULT_PASS=root
restart: always
ports:
- "15672:15672"
- "5672:5672"
redis:
image: "redis:latest"
container_name: redis
restart: always
ports:
- 6379:6379
volumes:
- ./conf/redis.conf:/etc/redis/redis.conf:rw
- ./redis-data/:/data:rw
command:
# 執(zhí)行的命令
redis-server /etc/redis/redis.conf --appendonly yes
Docker下安裝的mysql版本高于5.7出現(xiàn)的問題
解決在執(zhí)行select等語句使用了GROUP BY時,會提示出現(xiàn)錯誤#1
我使用的centos7,mysql的版本時5.7,使用docker-compose來啟動的。
一般解決這個問題是進(jìn)入docker的mysql容器,執(zhí)行set global sql_mode='STRICT_TRANS_TABLES,NO_ZERO_IN_DATE,NO_ZERO_DATE,ERROR_FOR_DIVISION_BY_ZERO,NO_AUTO_CREATE_USER,NO_ENGINE_SUBSTITUTION';和set session sql_mode='STRICT_TRANS_TABLES,NO_ZERO_IN_DATE,NO_ZERO_DATE,ERROR_FOR_DIVISION_BY_ZERO,NO_AUTO_CREATE_USER,NO_ENGINE_SUBSTITUTION';
這樣能解決此問題。不過我的docker一旦重啟之后,它的sql_mode又恢復(fù)原樣了。
sql_mode修改后重啟容器又復(fù)原解決方法
使用docker連接mysql容器,并編輯/etc/mysql/mysql.conf.d/mysqld.cnf文件。添加如下語句:sql_mode ='STRICT_TRANS_TABLES,NO_ZERO_IN_DATE,NO_ZERO_DATE,ERROR_FOR_DIVISION_BY_ZERO,NO_AUTO_CREATE_USER,NO_ENGINE_SUBSTITUTION'
在連接mysql容器后無法使用vi或vim命令解決方法
輸入如下命令解決:
- apt-get update 同步/etc/apt/sources.list 和 /etc/apt/sources.list.d 中列出的源的索引,這樣才能獲取到最新的軟件包。
- apt-get install vim
如果出現(xiàn)bash:ping:command not found
使用apt-get install iputils-ping