雖然已經安裝了docker好久了,但在之前都沒有認真的去學習使用過,只是大概的瞭解了一下原理就放下無論了,在本週的項目中,潘老師要求咱們使用docker來使用數據庫,趁此機會,總算是成功的掌握了docker的基本用法。html
Docker 屬於 Linux 容器的一種封裝,提供簡單易用的容器使用接口。它是目前最流行的 Linux 容器解決方案。Docker 將應用程序與該程序的依賴,打包在一個文件裏面。運行這個文件,就會生成一個虛擬容器。
程序在這個虛擬容器裏運行,就好像在真實的物理機上運行同樣。有了 Docker,就不用擔憂環境問題。mysql整體來講,Docker 的接口至關簡單,用戶能夠方便地建立和使用容器,把本身的應用放入容器。容器還能夠進行版本管理、複製、分享、修改,就像管理普通的代碼同樣。linux
上面的解釋引自阮一峯的博客,就個人理解來講docker就是一個特別輕量級的虛擬機,而後以端口映射的方式讓本機訪問它的應用程序,從而避免在本機進行繁瑣的開發環境配置。sql
下面是使用docker過程當中必用的一些命令,放到這裏固然不是由於他們容易記,而是爲了之後方便查閱。docker
固然要記住下面這些也不難,經過後面的實戰示例再加上一兩次本身的熟悉基本就能記住了。數據庫
docker runbash
例如:docker run --name mysql -p 3306:3306 -e MYSQL_ROOT_PASSWORD=password -d mysql/mysql-server:latest網絡
含義:容器的名字爲mysql,將容器的3306端口映射到本機的3306端口,mysql數據庫的密碼爲password ,運行的鏡像爲mysql/mysql-server:latest學習
docker ps spa
接下來我將會在docker中新建並啓動一個mysql容器,而後以本地訪問。
docker pull mysql:5.7.21
docker run --name mysql -p 3309:3306 -e MYSQL_ROOT_PASSWORD=test -d mysql:5.7.21
容器的名字爲mysql,將容器的3306端口映射到本機的3309端口,mysql數據庫的密碼爲test ,容器在後臺運行,運行的鏡像爲mysql:5.7.21
docker ps
沒有任何問題
使用下面的命令就能夠了
docker run -it --link mysql:mysql --rm mysql:5.7.21 sh -c 'exec mysql -h"$MYSQL_PORT_3306_TCP_ADDR" -p'
這就直接進入了容器的mysql中。
黃庭祥教了我另外一個方法,能夠理解爲上一步方法的分步執行
docker exec -it mysql bash
能夠發現這個容器和咱們的linux基本同樣,各類基礎的命令都能執行
mysql -uroot -p -h localhost