- 添加Docker的ATP仓库
sudo sh -c "echo deb https://get.docker.io/ubuntu docker main > /etc/apt/sources.list.d/docker.list"
- 添加Docker仓库的GPG密钥
curl -s https://get.docker.io/gpg | sudo apt-key add -
- 更新APT源
sudo apt-get update
- 在Ubuntu中安装Docker
sudo apt-get install lxc-docker docker
- 确认Docker已经安装在Ubuntu中
➜ ~ sudo docker info
[sudo] password for tp:
Containers: 1
Images: 4
Storage Driver: aufs
Root Dir: /var/lib/docker/aufs
Backing Filesystem: extfs
Dirs: 6
Dirperm1 Supported: true
Execution Driver: native-0.2
Logging Driver: json-file
Kernel Version: 3.16.0-44-generic
Operating System: Ubuntu 14.10
CPUs: 4
Total Memory: 7.702 GiB
Name: ubuntu
ID: LOMF:BPSX:TEY4:HU4K:S5E3:H6UX:DUNQ:MFSG:UAIP:JMW5:HKEP:SQ2M
WARNING: No swap limit support 检查docker守护进程是否在运行
➜ ~ sudo status docker
[sudo] password for tp:
docker start/running, process 18117- 居于ubuntu镜像,创建一个docker
➜ ~ sudo docker run -i -t ubuntu /bin/bash
[sudo] password for tp:
root@5e2accdd4f7a:/#
# 创建特定名称的docker
sudo docker run --name first-docker -i -t ubuntu /bin/bash - 创建一个kali-linux
# 先获取镜像
➜ tools sudo docker pull kalilinux/kali-linux-docker
latest: Pulling from kalilinux/kali-linux-docker a4d244f4db27: Pull complete
ff90a7782c43: Pull complete
426f69441115: Pull complete
c4fad45aeb16: Pull complete
e4c3a586e9ad: Pull complete
63ae5ac8df0f: Already exists
Digest: sha256:9d50de0f7e4f9696f7b85896cad1d966d4fabcc47c75ed427705708a33b762b4
Status: Downloaded newer image for kalilinux/kali-linux-docker:latest # 创建kali-linux
➜ tools sudo docker run --name kali -t -i kalilinux/kali-linux-docker /bin/bash
root@fe6c7da22c2e:/# uname -a
Linux fe6c7da22c2e 3.16.0-44-generic #59-Ubuntu SMP Tue Jul 7 02:07:39 UTC 2015 x86_64 GNU/Linux # 更新源列表,由于刚安装的,vim都没有,所以用nano进行编辑 #加入如下源,ctrl+o写入ctrl+x退出
deb http://mirrors.ustc.edu.cn/kali kali main non-free contrib
deb-src http://mirrors.ustc.edu.cn/kali kali main non-free contrib
deb http://mirrors.ustc.edu.cn/kali-security kali/updates main contrib non-free # 刷新源列表
apt-get update
# 安装metasploit
root@fe6c7da22c2e:/# apt-get install metasploit - 使用容器
root@5e2accdd4f7a:/# hostname
5e2accdd4f7a
root@5e2accdd4f7a:/# cat /etc/hosts
172.17.0.2 5e2accdd4f7a
127.0.0.1 localhost
::1 localhost ip6-localhost ip6-loopback
fe00::0 ip6-localnet
ff00::0 ip6-mcastprefix
ff02::1 ip6-allnodes
ff02::2 ip6-allrouters
root@5e2accdd4f7a:/# vim
bash: vim: command not found
root@5e2accdd4f7a:/# apt-get install vim - 查看当前系统中容器列表
➜ ~ sudo docker ps -a
[sudo] password for tp:
CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES
5e2accdd4f7a ubuntu "/bin/bash" 6 minutes ago Up 6 minutes fervent_wozniak
c5e16b9df2e5 ubuntu "/bin/bash" 25 minutes ago Up 7 minutes reverent_hoover - 切换到正在运行的docker
➜ ~ sudo docker attach reverent_hoover
root@c5e16b9df2e5:/# - 查看容器内的进程
➜ ~ sudo docker top fervent_wozniak
UID PID PPID C STIME TTY TIME CMD
root 20254 18117 0 14:02 pts/16 00:00:00 /bin/bash - 停止或重容器
➜ ~ sudo docker stop reverent_hoover
reverent_hoover
➜ ~ sudo docker ps -a
CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES
f68e131bb9dc ubuntu "/bin/bash" 12 minutes ago Exited (0) 11 minutes ago first-docker
5e2accdd4f7a ubuntu "/bin/bash" 22 minutes ago Exited (2) 39 seconds ago fervent_wozniak
c5e16b9df2e5 ubuntu "/bin/bash" 42 minutes ago Exited (0) 2 seconds ago reverent_hoover
➜ ~ sudo docker start reverent_hoover
reverent_hoover
➜ ~ sudo docker ps -a
CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES
f68e131bb9dc ubuntu "/bin/bash" 12 minutes ago Exited (0) 11 minutes ago first-docker
5e2accdd4f7a ubuntu "/bin/bash" 22 minutes ago Exited (2) 49 seconds ago fervent_wozniak
c5e16b9df2e5 ubuntu "/bin/bash" 42 minutes ago Up 1 seconds reverent_hoover - 获取容器更多信息
➜ ~ sudo docker inspect reverent_hoover
- 删除容器
➜ ~ sudo docker ps -a
CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES
f68e131bb9dc ubuntu "/bin/bash" 15 minutes ago Exited (0) 14 minutes ago first-docker
5e2accdd4f7a ubuntu "/bin/bash" 26 minutes ago Exited (2) 4 minutes ago fervent_wozniak
c5e16b9df2e5 ubuntu "/bin/bash" 45 minutes ago Up 3 minutes reverent_hoover
➜ ~ sudo docker rm first-docker
first-docker
➜ ~ sudo docker ps -a
CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES
5e2accdd4f7a ubuntu "/bin/bash" 26 minutes ago Exited (2) 4 minutes ago fervent_wozniak
c5e16b9df2e5 ubuntu "/bin/bash" 46 minutes ago Up 3 minutes reverent_hoover # 删除全部容器
sudo docker rm `docker ps -a -q`