Docker 建置一個容器

以下會以 MySQL 作例子

啟動CMD

輸入以下指令來搜尋鏡像

Bash
docker search mysql
搜尋鏡像

找到需要的鏡像檔(image)後輸入以下指令

Bash
docker pull mysql

下載完成後可輸入以下指令來查看

Bash
docker images
查詢鏡像檔
應該會看到剛才pull下來的image

下載完成後,啟動它製作成容器(Container)

Bash
docker run --name mysql-latest -v D:/Docker/mysql/mysql-latest/custom:/etc/mysql/conf.d -v D:/Docker/mysql/mysql-latest/data:/var/lib/mysql -p 3306:3306 -e MYSQL_ROOT_PASSWORD=123456 -d mysql:latest

## 如果不需要使用自定義的 config file 可以使用以下 command
## 最後的 lastest 是 tag
docker run --name xxxx -p 3306:3306 -e MYSQL_ROOT_PASSWORD=123456 -d mysql:latest


--name xxxxx 為容器名稱,可自定義
-v 為放置鏡像檔的路徑(本機),與鏡像的檔案路徑(容器內),它們以「:」作分隔
-p 將本機內的port映射到容器內的port (前面是本機,後面是容器) 意思是訪問本機的port 3306會映射到容器的3306
-e 容器環境參數設定
-d 讓容器在背景執行
-v 例子,本機位置

使用root權限登入

Bash
mysql -u root -p
## 本篇建立時密碼為 123456

建立新帳號且對外開放連線

SQL
## 帳號為test 密碼為test123
CREATE USER 'test'@'%' IDENTIFIED BY 'test123';

## 賦予權限
GRANT ALL ON *.* TO 'test'@'%' WITH GRANT OPTION;

ALTER USER 'test'@'%' IDENTIFIED WITH mysql_native_password BY 'test123';

測試連線

這樣就完成了~

安裝phpmyadmin 連接mysql

Bash
## 下載鏡像
docker pull phpmyadmin

## 查看鏡像 (可省略)
docker images

## 以下有兩種方法
## 第1種
## docker run -d -p <local_port>:<container_port> -e PMA_HOST=<mysql_ip> -e PMA_POST=<mysql_port> --name <container_name> <image_id>
docker run -d -p 6062:80 -e PMA_HOST=172.17.0.4 -e PMA_PORT=3306 --name my_custom_phpmyadmin 511d0d6a7b22

## 第2種
## 這種方式不需要每次都固定某個容器的IP
## docker run -d -p <local_port>:<container_port> --link <mysql_container_name>:db --name container_nameimage_id
## mysql-latest 是因為上面例子改名這個名稱
docker run -d -p 6063:80 --link mysql-latest:db --name my_custom_phpmyadmin2 511d0d6a7b22
輸入docker images 查看 IMAGE ID
然後就可以透過 localhost 來登入

開始在上面輸入您的搜索詞,然後按回車進行搜索。按ESC取消。

返回頂部