# 1. 安裝 docker
#### 1. 介紹
docker有點像虛擬機技術那樣,虛擬機是模擬了全部或部分的硬件,有一整套自己的操作系統,而docker不是,它只是一個進程,這個進程叫容器,這種叫容器技術,或隔離技術,它沒有再啟動一個操作系統,因為太耗資源,又太慢,它是隔離了linux內核,有自己的空間,比如說,自己的root賬號,磁盤情況等。它很輕量極,啟動很快,一個機器可以啟動很多個docker容器進程。
說說幾個應用場景,你沒有理由不去用它。
- 前端工程師,不懂配置php或java的開發環境
- 持續集成測試
- 快速部署,一條命令,部署的環境一模一樣
- 作為一個nodejs程序員,不懂php或ruby,想部署它們寫的應用,一條命令
- 方便地對程序進行資源配置,比如進程監控,內存限制
- 安裝軟件太慢,比如安裝mongodb,要下載下來要好久,而docker只需要一條命令就可以跑起來
#### 2. mac下安裝
點擊[這里](https://docs.docker.com/docker-for-mac/install/)下載最新的mac版安裝程序。
點擊安裝包下載完,運行即可。
#### 3. linux下安裝
一條命令即可。
```
curl -sSL https://get.daocloud.io/docker | sh
```
**這條命令在ubuntu 14.04和ubuntu 16.04都可以成功安裝docker。**
安裝完成功后,可能會提示你這樣的信息:
```
If you would like to use Docker as a non-root user, you should now consider
adding your user to the "docker" group with something like:
sudo usermod -aG docker vagrant
Remember that you will have to log out and back in for this to take effect!
```
`vagrant`是你的用戶名,可能你的用戶名跟我的不一樣。
意思就是說,你可以把當前用戶加入到docker組,以后要管理docker就方便多了,不然你以后有可能要使用docker命令前,要在前面加`sudo`。
如果沒加`sudo`就是類似這樣的提示:
```
Got permission denied while trying to connect to the Docker daemon socket at unix:///var/run/docker.sock: Get http://%2Fvar%2Frun%2Fdocker.sock/v1.26/containers/json: dial unix /var/run/docker.sock: connect: permission denied
```
不過執行了`sudo usermod -aG docker vagrant`之后,你再重新登錄(ssh),就可以免去加`sudo`。
安裝成功,需要把docker這個服務啟動起來:
如果是ubuntu 14.04的系統,它會自動啟動,你也可以使用下面的命令來啟動。
```
$ sudo /etc/init.d/docker start
```
如果是ubuntu 16.04的系統,就用下面的命令:
```
$ sudo systemctl status docker.service
```
完結。
下一篇:[docker的鏡像和鏡像源加速(二)](https://www.rails365.net/articles/docker-de-jing-xiang-he-jing-xiang-yuan-jia-su-er)
- 0. 介紹
- 1. 安裝 docker
- 2. docker 的鏡像和鏡像源加速
- 3. docker 的容器
- 4. 理解 docker 鏡像的層疊結構
- 5. 使用 Dockerfile 文件
- 6. docker 的數據卷
- 7. Docker Compose 的介紹與安裝
- 8. 使用 compose 部署 GitLab 應用
- 9. 使用 compose 部署 Rocket.Chat 應用
- 10. docker 部署深入理解
- 11. 部署 owncloud 與 phpMyAdmin
- 12. 讓 php-fpm 跑的 owncloud 應用 docker 化
- 13. docker 遷移 GitLab 項目