1.Docker安裝常用服務
1.1 安裝mysql
# 1.拉取mysql鏡像到本地
docker pull mysql:tag (tag不加默認最新版本)
# 2.運行mysql服務
docker run --name mysql -e MYSQL_ROOT_PASSWORD=root -d mysql:tag --沒有暴露外部端口外部不能連接
docker run --name mysql -e MYSQL_ROOT_PASSWORD=root -p 3306:3306 -d mysql:tag --沒有暴露外部端口
# 3.進入mysql容器
docker exec -it 容器名稱|容器id bash
# 4.外部查看mysql日誌
docker logs 容器名稱|容器id
# 5.使用自定義配置參數
docker run --name mysql -v /root/mysql/conf.d:/etc/mysql/conf.d -e MYSQL_ROOT_PASSWORD=root -d mysql:tag
# 6.將容器數據位置與宿主機位置掛載保證數據安全
docker run --name mysql -v /root/mysql/data:/var/lib/mysql -v /root/mysql/conf.d:/etc/mysql/conf.d -e MYSQL_ROOT_PASSWORD=root -p 3306:3306 -d mysql:tag
# 7.通過其他客戶端訪問 如在window系統|macos系統使用客戶端工具訪問
# 8.將mysql數據庫備份爲sql文件
docker exec mysql|容器id sh -c 'exec mysqldump --all-databases -uroot -p"$MYSQL_ROOT_PASSWORD"' > /root/all-databases.sql --導出全部數據
docker exec mysql sh -c 'exec mysqldump --databases 庫表 -uroot -p"$MYSQL_ROOT_PASSWORD"' > /root/all-databases.sql --導出指定庫數據
docker exec mysql sh -c 'exec mysqldump --no-data --databases 庫表 -uroot -p"$MYSQL_ROOT_PASSWORD"' > /root/all-databases.sql --導出指定庫數據不要數據
# 9.執行sql文件到mysql中
docker exec -i mysql sh -c 'exec mysql -uroot -p"$MYSQL_ROOT_PASSWORD"' < /root/xxx.sql
1.2 安裝Redis服務
# 1.在docker hub搜索redis鏡像
docker search redis
# 2.拉取redis鏡像到本地
docker pull redis
# 3.啓動redis服務運行容器
docker run --name redis -d redis:tag (沒有暴露外部端口)
docker run --name redis -p 6379:6379 -d redis:tag (暴露外部宿主機端口爲6379進行連接)
# 4.查看啓動日誌
docker logs -t -f 容器id|容器名稱
# 4.進入容器內部查看
docker exec -it 容器id|名稱 bash
# 5.加載外部自定義配置啓動redis容器
默認情況下redis官方鏡像中沒有redis.conf配置文件 需要去官網下載指定版本的配置文件
1. wget http://download.redis.io/releases/redis-5.0.8.tar.gz 下載官方安裝包
2. 將官方安裝包中配置文件進行復制到宿主機指定目錄中如 /root/redis/redis.conf文件
3. 修改需要自定義的配置
bind 0.0.0.0 開啓遠程權限
appenonly yes 開啓aof持久化
4. 加載配置啓動
docker run --name redis -v /root/redis:/usr/local/etc/redis -p 6379:6379 -d redis redis-server /usr/local/etc/redis/redis.conf
# 6.將數據目錄掛在到本地保證數據安全
docker run --name redis -v /root/redis/data:/data -v /root/redis/redis.conf:/usr/local/etc/redis/redis.conf -p 6379:6379 -d redis redis-server /usr/local/etc/redis/redis.conf