什么是Docker

Docker 是一个开源的应用容器引擎

他可以解决环境不一致,叫整个环境打包成一个集装箱,然后别人下载下来运行就不会出错了

容器是完全使用沙箱机制,就是隔离型,他运行的时候会在Linux内核里面开辟一个空间,这个空间不会影响其他的东西

虚拟机会站很大的空间,虚拟机会创建一个内核,

Docker与虚拟机的区别

docker有着比虚拟机更少的抽象层
Docker用的是物理机的内核
vm是自己创建一个内核环境会变的很慢

Docker的安装

他有Docker-ce版本的介绍社区版本的和Docker-ee企业版本

kali安装运行下面这个命令就可以直接安装

1
apt install docker.io

如果是其他的linux可以用下面这个命令安装

1
curl -s https://get.docker.com/ | sh

Docker的卸载

卸载依赖

1
sudo yum remove docker-ce docker-ce-cli containerd.io

卸载资源

1
sudo rm -rf /var/lib/docker

下载kali

下面我先下载一个kali Linux容器
命令

1
docker pull kalilinux/kali-linux-docker

运行和进入容器

命令

1
docker run --name kali -it -p 5555:22  a1765e8e381e /bin/bash

--name 容器名称:指定容器的名称
-it 交互方法运行 主机可以进入
-p 宿主机端口:容器端口:为了映射当前Linux端口和容器端口 ,他还有个-P他会随机指定端口
/bin/bash 是运行控制台 载入容器后运行 ,docker中必须要保持一个进程的运行,要不然整个容器启动后就会马上kill itself,这个/bin/bash就表示启动容器后启动bash

配置kali

设置密码

1
passwd 

更新源

1
apt-get  update

下载常用的命令

1
apt install net-tools

下载vim

1
apt-get  install vim

下载ssh

1
apt install ssh

配置ssh运行ROOT用户连接
修改vim /etc/ssh/sshd_config文件

1
2
#PermitRootLogin prohibit-password修改成PermitRootLogin yes
#PasswordAuthentication yes修改成PasswordAuthentication yes

启动ssh

1
/etc/init.d/ssh start

退出容器

在容器里面输入exit退出容器,这个退出之后容器也会停止

如果不行停止可以用Ctrl+P+Q,这样退出容器不会停止运行

远程连接容器kali

用ssh进行连接
可以看见连接到了