centos7下docker-ce19.03.2搭建本地開發環境(mysql5.7,RabbitMQ3.7.7-management,redis5.0.5)


yum remove docker docker-common docker-selinux docker-engine -- 卸載舊版本
yum install -y yum-utils device-mapper-persistent-data lvm2 -- 安裝需要的軟件包,yum-util提供yum-config-manager功能,另外兩個是devicemapper驅動依賴的
yum-config-manager --add-repo https://download.docker.com/linux/centos/docker-ce.repo -- 設置yum源
yum list docker-ce --showduplicates | sort -r -- 查看所有倉庫中所有docker版本
yum install docker-ce -y -- 下載最新版穩定docker
systemctl start docker
systemctl enable docker -- 開機自啟
docker version -- 查看docker版本

免sudo使用docker命令
sudo groupadd docker
sudo gpasswd -a ${USER} docker
newgrp - docker

鏡像加速( 阿里雲->  打開網址:https://cr.console.aliyun.com/#/accelerator 注冊、登錄、設置密碼 https://xxxxxxxxx.mirror.aliyuncs.com)

"https://hub.daocloud.io/"

sudo mkdir -p /etc/docker
sudo tee /etc/docker/daemon.json <<-'EOF'
{
"registry-mirrors": ["https://xxxxxxxxx.mirror.aliyuncs.com"]
}
EOF
sudo systemctl daemon-reload
sudo systemctl restart docker

mysql 5.7 docker安裝:
docker search mysql -- dockerhub搜索mysql相關鏡像
docker tag centos/mysql-57-centos7 mysql:5.7
docker run -it --rm mysql:5.7 --verbose --help
docker run --name mysql-test -p3306:3306 -e MYSQL_ROOT_PASSWORD=123456 -d mysql:5.7 -- 啟動測試mysql容器
docker exec -it mysql-test bash -- 命令行進入
find / -name my.cnf
docker logs mysql-test -- 查看容器日志文件

獲取鏡像中的路徑(通過dockerhub文檔獲取鏡像配置路徑):
msyql配置文件路徑: /etc/mysql/conf.d
mysql數據卷路徑: /var/lib/mysql
自己定義本地(宿主機)路徑:
mysql配置文件路徑: /usr/docker/mysql/conf
mysql數據卷路徑: /usr/docker/mysql/data

tee /usr/docker/mysql/conf/my.cnf <<-'EOF'
[mysqld]
default_password_lifetime=0
lower_case_table_names=1
character_set_server=utf8
[client]
default-character-set=utf8
[mysql]
default-character-set=utf8
EOF

docker run -d -p 3306:3306 --restart=always --privileged=true -v /usr/docker/mysql/conf/my.cnf:/etc/mysql/my.cnf -v /usr/docker/mysql/data:/var/lib/mysql -e MYSQL_ROOT_PASSWORD=123456 --name mysql mysql:5.7

--restart=always 跟隨docker啟動
--privileged=true 容器root用戶享有主機root用戶權限
-v 映射主機路徑到容器
-e MYSQL_ROOT_PASSWORD=root 設置root用戶密碼
-d 后台啟動
--lower_case_table_names=1 設置表名參數名等忽略大小寫

docker exec -it mysql bash -- 進入容器
grant all privileges on *.* to 'pritest'@'%' identified by '123456' -- 修改外網登錄權限



RabbitMQ docker安裝:
創建目錄:
/usr/docker/rabbitmq/data
docker pull rabbitmq:3.7.7-management
docker run -d --restart=always --privileged=true -p 5672:5672 -p 15672:15672 -v /usr/docker/rabbitmq/data:/var/lib/rabbitmq --hostname myRabbit -e RABBITMQ_DEFAULT_VHOST=my_vhost -e RABBITMQ_DEFAULT_USER=admin -e RABBITMQ_DEFAULT_PASS=admin --name rabbitmq rabbitmq:3.7.7-management
http://127.0.0.0:19950

docker logs myrabbitmq -- 查看啟動日志
docker exec -it rabbitmq bash -- 進入容器



redis docker安裝:
創建redis本地目錄
/usr/docker/redis/conf
/usr/docker/redis/data
在/usr/docker/redis/conf下創建redis.conf (https://github.com/antirez/redis/tags 在此獲取對應本部的配置文件

docker pull redis -- redis5.0.5

鏡像中的對應文件:
/etc/redis/redis.conf
/data

docker run -d --restart=always --privileged=true -p 6379:6379 -v /usr/docker/redis/conf/redis.conf:/etc/redis/redis.conf -v /usr/docker/redis/data:/data --name myredis redis
docker exec -it myredis bash --進入容器調式

修改本地文件/usr/docker/redis/conf/redis.conf,查找配置項,修改配置文件:(登錄密碼,外網訪問)
requirepass 123456
#bind 127.0.0.1
protected-mode yes
docker restart redis463 -- 重啟生效


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM