您好,登錄后才能下訂單哦!
目錄結構
. │ .env │ docker-compose.yml │ └─mysql ├─config │ my.cnf │ └─data
mysql 目錄下的 data 為數據目錄,mysql 的數據表、二進制日志文件就在這里。.env 文件包含了一些變量,這些變量可以在 docker-compose.yml
文件中通過 ${variable_name}
來引用。
當然也可以把 mysql 的目錄放到其它地方,這里圖個方便,直接放在 yml 文件同級目錄了。
.env 文件
MYSQL_ROOT_PASSWORD=root MYSQL_ROOT_HOST=% MYSQL_DIR=./mysql
MySQL 配置文件 my.cnf
[mysqld] character-set-server=utf8mb4 default-time-zone='+8:00' innodb_rollback_on_timeout='ON' max_connections=500 innodb_lock_wait_timeout=500
如果使用默認配置,這個文件可以省略。
docker-compose.yml
version: '3' services: mysql-db: container_name: mysql-docker # 指定容器的名稱 image: mysql:8.0 # 指定鏡像和版本 ports: - "3306:3306" environment: MYSQL_ROOT_PASSWORD: ${MYSQL_ROOT_PASSWORD} MYSQL_ROOT_HOST: ${MYSQL_ROOT_HOST} volumes: - "${MYSQL_DIR}/data:/var/lib/mysql" # 掛載數據目錄 - "${MYSQL_DIR}/config:/etc/mysql/conf.d" # 掛載配置文件目錄
Environment 變量
運行容器
在 docker-compose.yml 目錄下執行:
> docker-compose up
如果要在后臺運行,使用 docker-compose up -d
。
停止容器:
> docker-compose down
如果是前臺運行的,使用:Ctrl + C 停止。這兩種方式在停止后都會刪除容器,下次啟動必須使用 up 命令。
停止但不刪除容器:
> docker-compose stop
使用 stop 停止后,再次啟動使用 start 命令即可。
總結
以上所述是小編給大家介紹的使用 docker-compose 運行 MySQL的方法,希望對大家有所幫助,如果大家有任何疑問請給我留言,小編會及時回復大家的。在此也非常感謝大家對億速云網站的支持!如果你覺得本文對你有幫助,歡迎轉載,煩請注明出處,謝謝!
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。