簡介
Compose 是用於定義和運行多容器 Docker 應用程序的工具。通過 Compose,您可以使用 YML 文件來配置應用程序需要的所有服務。然後,使用一個命令,就可以從 YML 文件配置中創建並啓動所有服務。
準備工作
安裝Docker CE
- 刪除系統上可能存在的所有較舊的Docker安裝:
sudo apt remove docker docker-engine docker.io
- 確保有必要的包:
sudo apt install apt-transport-https ca-certificates curl software-properties-common gnupg
- 添加Docker的GPG密鑰:
curl -fsSL https://download.docker.com/linux/ubuntu/gpg | sudo apt-key add -
- 驗證GPG密鑰的指紋:
sudo apt-key fingerprint 0EBFCD88
看到差不多這樣的輸出
pub rsa4096 2017-02-22 [SCEA]
9DC8 5822 9FC7 DD38 854A E2D8 8D81 803C 0EBF CD88
uid [ unknown] Docker Release (CE deb)
sub rsa4096 2017-02-22 [S]
- 添加穩定的docker
sudo add-apt-repository "deb [arch=amd64] https://download.docker.com/linux/ubuntu $(lsb_release -cs) stable"
- 更新軟件包索引並安裝Docker CE:
sudo apt update
sudo apt install docker-ce
- 運行helloworld檢查是否安裝成功
docker run hello-world
安裝docker-compose
sudo curl -L https://github.com/docker/compose/releases/download/1.25.4/docker-compose-`uname -s`-`uname -m` -o /usr/local/bin/docker-compose
chmod +x /usr/local/bin/docker-compose #賦予執行權限
docker-compose --version #檢查版本
創建軟鏈接sudo ln -s /usr/local/bin/docker-compose /usr/bin/docker-compose
檢測版本docker-compose version
輸出成功 即爲安裝成功
編寫yml文件
創建目錄
cd /usr/local/
mkdir docker
cd docker/
mkdir mysql
cd mysql/
新建文件
vim docker-compose.yml
docker-compose.yml文件內容
version: '3.1'
services:
db:
image: mysql
restart: always
environment:
MYSQL_ROOT_PASSWORD: 123456
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
ports:
- 3306:3306
volumes:
- ./data:/var/lib/mysql
adminer:
image: adminer
restart: always
ports:
- 8080:8080
啓動 docker-compose up -d
查看容器狀態docker ps
安裝Navicat premium
懂得都懂 https://www.52pojie.cn/forum.php?mod=viewthread&tid=1142909
連接數據庫
分別輸入docket的宿主機ip、剛纔設置的端口號、用戶名、密碼等,即可。如果連不上,可以docker ps
看下是否啓動,端口號是否正確,docker所在宿主機防火牆設置,navicat所在機器防火牆設置。
配置靜態ip
因爲虛擬機的ip是dhcp獲取的,所以可能會有變化,這裏是Ubuntu18.04配置方法
查看網卡、ip等信息ifconfig
查看網關netstat -rn
以0.0.0.0開始的行的gateway是默認網關
根據對應信息,對/etc/netplan/01-network-manager-all.yaml
修改
network:
ethernets:
ens33:
addresses: [192.168.190.201/24]
gateway4: 192.168.190.2
nameservers:
addresses: [8.8.8.8,114.114.114.114]
version: 2
使配置生效netplan apply