docker踩坑指南(三)

本文只讲使用,不讲原理。原理请看《第一本docker书》

参考资料:


docker镜像是什么?

docker image是相当于工厂中的原型。

docker方便在可以在仓库中取回各种各样的原型,然后再修改配置,方便我们自己的使用。而且改完的配置,还可以给别人使用。

virtualBox

右ctrl离开虚拟机输入 右ctrl + c 切换视图,隐藏菜单到窗口模式

virtualbox增强功能,可以自由扩展虚拟机的大小。如果没有安装,则虚拟机的大小是固定的,比较不方便。

查看本地镜像

docker images

下载服务器的镜像

docker pull ubuntu:12.04

查看服务器提供了哪些镜像

docker search kali

这条命令会查找仓库中所有可用的image

11

查找到以后,用docker pull ctarwater/kali-msf,即可下载一个想要的镜像到本地。

修改本地镜像

当从仓库中取回了镜像,就可以在本地修改镜像了。

docker commit

commit是提交的意思,可以用该命令修改容器的配置。举个例子。

1
2
3
apt-get -y install apache2
exit
docker commit 指定容器 自动逸新的容器名称

12

dockerfile

dockerfile类似一个linux shell脚本,它使用的语法是被称为DSL的一种语言。暂时我们不涉及学习这种语言的编写。

1
2
3
4
5
6
7
wget https://raw.githubusercontent.com/vulhub/vulhub/master/base/weblogic/Dockerfile

docker build -t myimg/ubuntu:v1 .

当前目录下有个名为Dockerfile的文件,用build -t命令,以tab标签新建一个自定义名称的容器。
注意最后的英文点号
注意,起容器名称的时候,长度不能太短,否则会报错

16

dockerhub账号

dockerhub是之前一直说到的仓库,我们可以把它理解为github代码托管网站。注册

注册以后,就有了私有仓库,叫做私有registry。可以将自己创建的image上传到私有仓库中。

kali安装docker

昨天费心的装了半天,结果一重启就报错,逐渐失去耐心。。。才发现kali安装docker比windows方便多了。。。

13

参考资料: https://www.jianshu.com/p/f386ee4c6203

1
2
3
4
5
6
7
8
9
apt-key adv --keyserver hkp://p80.pool.sks-keyservers.net:80 --recv-keys 58118E89F3A912897C070ADBF76221572C52609D

echo 'deb https://apt.dockerproject.org/repo debian-stretch main' > /etc/apt/sources.list.d/docker.list

apt-get -y install apt-transport-https ca-certificates

apt-get update && sudo apt-get -y install docker-engine

systemctl start docker

15