1. 程式人生 > >Docker學習筆記 之 Docker安裝配置使用

Docker學習筆記 之 Docker安裝配置使用

容器 dcoker

簡介

Docker是一個開源的引擎,可以輕松的為任何應用創建一個輕量級的、可移植的、自給自足的容器。開發者在筆記本上編譯測試通過的容器可以批量地在生產環境中部署,包括VMs(虛擬機)、bare metal、OpenStack 集群和其他的基礎應用平臺。

環境:CentOS7.3

地址:192.168.1.137

首先註冊阿裏雲開發者帳號帳號

https://cr.console.aliyun.com/

登陸後取得專屬加速器地址:https://XXXXX.mirror.aliyuncs.com


1、安裝Docker

#使用Aliyun的repo來安裝
#wget -P /etc/yum.repos.d/ https://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repo
#yum install docker
# docker -v
Docker version 1.12.6, build 85d7426/1.12.6##當前最新版本為1.12.6


#或執行以下命令:

curl -sSL http://acs-public-mirror.oss-cn-hangzhou.aliyuncs.com/docker-engine/internet | sh -


2、#配置阿裏的Docker加速器

針對Docker客戶端版本大於1.10的用戶

修改daemon配置文件/etc/docker/daemon.json來使用加速器:

$ mkdir -p /etc/docker
$sudo tee /etc/docker/daemon.json <<-‘EOF‘
{
  "registry-mirrors": ["https://XXXXXX.mirror.aliyuncs.com"]
}
EOF
$sudo systemctl daemon-reload
$sudo systemctl restart docker


3、下載image 並創建啟動一個容器

a、搜索鏡像

$ sudo docker search ubuntu
INDEX       NAME                                                             DESCRIPTION                                     STARS     OFFICIAL   AUTOMATED
docker.io   docker.io/ubuntu                                                 Ubuntu is a Debian-based Linux operating s...   6780      [OK]       
docker.io   docker.io/dorowu/ubuntu-desktop-lxde-vnc                         Ubuntu with openssh-server and NoVNC            141                  [OK]
docker.io   docker.io/rastasheep/ubuntu-sshd                                 Dockerized SSH service, built on top of of...   115                  [OK]
docker.io   docker.io/ansible/ubuntu14.04-ansible                            Ubuntu 14.04 LTS with ansible                   88                   [OK]
docker.io   docker.io/ubuntu-upstart                                         Upstart is an event-based replacement for ...   80        [OK]       
docker.io   docker.io/neurodebian                                            NeuroDebian provides neuroscience research...   40        [OK]       
docker.io   docker.io/ubuntu-debootstrap                                     debootstrap --variant=minbase --components...   32        [OK]

b、下載容器

$ sudo docker pull docker.io/ubuntu
Using default tag: latest
Trying to pull repository docker.io/library/ubuntu ... 
latest: Pulling from docker.io/library/ubuntu
ae79f2514705: Pull complete 
c59d01a7e4ca: Pull complete 
41ba73a9054d: Pull complete 
f1bbfd495cc1: Pull complete 
0c346f7223e2: Pull complete 
Digest: sha256:6eb24585b1b2e7402600450d289ea0fd195cfb76893032bbbb3943e041ec8a65
$ sudo docker images 
REPOSITORY          TAG                 IMAGE ID            CREATED             SIZE
docker.io/nginx     latest              40960efd7b8f        4 days ago          108.4 MB
docker.io/ubuntu    latest              dd6f76d9cc90        4 days ago          122 MB
##這裏第一個鏡像就下載完成了。


c、根據ubuntu鏡像創建容器(簡單測試)

$ sudo docker run -t -i ubuntu /bin/bash
root@9f716fcadb56:/# cat /etc/issue
Ubuntu 16.04.3 LTS \n \l
root@9f716fcadb56:/# exit#停止容器
$ sudo docker ps -a 
CONTAINER ID        IMAGE               COMMAND             CREATED              STATUS                      PORTS               NAMES
9f716fcadb56        ubuntu              "/bin/bash"         About a minute ago   Exited (0) 31 seconds ago                       goofy_aryabhata

註釋:各個字段

CONTAINER ID ---> 容器的ID號:9f716fcadb56

IMAGE ---> 使用的鏡像名

COMMAND ---> 創建容器的命令

STATUS ---> 容器狀態(Exited 表示停止狀態)

PORTS ---> 容器的端口

NAMES ---> 容器名稱


d、啟動容器

$ sudo docker start 9f716fcadb56
$ sudo docker ps -a 
CONTAINER ID        IMAGE               COMMAND             CREATED             STATUS              PORTS               NAMES
9f716fcadb56        ubuntu              "/bin/bash"         12 minutes ago      Up 29 seconds                           goofy_aryabhata

e、進入容器

使用docker 自帶 attach 命令:

$ sudo docker attach 9f716fcadb56
[sudo] password for ljohn: 
root@9f716fcadb56:/#


自docker1.3 以後使用 exec 命令

$ sudo docker exec -ti 9f7 /bin/bash
root@9f716fcadb56:/#

進入剛剛創建的容器中了,哈哈。


d、刪除容器

$ sudo docker rm 9f7
Error response from daemon: You cannot remove a running container 9f716fcadb5626561972312a2dbb2e23c2b312fd57861e0658feceff70409942. Stop the container before attempting removal or use -f
這裏發現無法刪除,說容器正在運行。需要加"-f"參數
$ sudo docker rm -f 9f7
9f7
$ sudo docker ps -a 
CONTAINER ID        IMAGE               COMMAND             CREATED             STATUS              PORTS               NAMES
這裏可以看到剛才創建的容器被刪除了。


期待後續更新 Docker學習筆記 之 數據管理

本文出自 “Ljohn” 博客,請務必保留此出處http://ljohn.blog.51cto.com/11932290/1980393

Docker學習筆記 之 Docker安裝配置使用