云服务器部署Docker及搭建各类环境

参考资料

最详细的ubuntu 安装 docker教程:https://zhuanlan.zhihu.com/p/651148141?utm_id=0

docker搭建Dvwa靶场:https://juejin.cn/post/7076807703565336612


开始的开始让我们先更新一下apt

1
2
sudo apt-get update
sudo apt-get upgrade

部署Docker

一. 卸载Ubuntu自带的Docker

以下操作最好用管理员

注:docker的旧版本不一定被称为docker,http://docker.io 或 docker-engine也有可能,所以我们卸载的命令为:

1
apt-get remove docker docker-engine docker.io containerd runc

如果报错也正常,有些Ubuntu没有Docker,直接下一步

二.安装

1.安装docker依赖

Docker在Ubuntu上依赖一些软件包。执行以下命令来安装这些依赖:

1
apt-get install ca-certificates curl gnupg lsb-release

2.添加Docker官方GPG密钥

执行以下命令来添加Docker官方的GPG密钥:

1
curl -fsSL http://mirrors.aliyun.com/docker-ce/linux/ubuntu/gpg | sudo apt-key add -

3.添加Docker软件源

执行以下命令来添加Docker的软件源:

1
sudo add-apt-repository "deb [arch=amd64] http://mirrors.aliyun.com/docker-ce/linux/ubuntu $(lsb_release -cs) stable"

4.安装docker

执行以下命令来安装Docker:

1
apt-get install docker-ce docker-ce-cli containerd.io

5.配置用户组(可选)

默认情况下,只有root用户和docker组的用户才能运行Docker命令。我们可以将当前用户添加到docker组,以避免每次使用Docker时都需要使用sudo。命令如下:

1
sudo usermod -aG docker $USER

注:重新登录才能使更改生效。


接下来我们就可以测试一下看Docker有没有安装成功了

我们可以通过启动docker来验证我们是否成功安装。命令如下:

1
systemctl start docker

安装工具

1
apt-get -y install apt-transport-https ca-certificates curl software-properties-common

重启docker

1
service docker restart

验证是否成功

1
sudo docker run hello-world

因为我们之前没有拉取过hello-world,所以运行命令后会出现本地没有该镜像,并且会自动拉取的操作

查看镜像(image)

1
docker images

出现了hello-world的镜像即可

查看版本

我们可以通过下面的命令来查看docker的版本

1
sudo docker version

搭建DVWA靶场

一. 准备工作

开端口:

打开控制台,安全组的管理规则开一个端口,假设为1314。然后连上服务器(我使用xshell)

启动Docker:

1
systemctl start docker

二.拉取image

找image(镜像)

1
docker search dvwa

选一个image拉取:

1
docker pull citizenstig/dvwa

三. 布置容器

1
2
3
4
5
docker images  //查看镜像
docker run --name Dvwa -d -p 9320:80 citizenstig/dvwa //布置容器
-p:指定映射端口
-d:后台运行
--name:容器命名为XXX

我端口是9320,后面的80不能改,容器里的php服务默认跑在80端口。

四. 后续

在网页上打开,创建数据库,账户密码输入admin,password即可。

删除容器和镜像

先删除正在运行的容器

查看正在运行的容器:

1
docker ps

停止正在运行的容器:

1
docker stop <容器ID或名称>

删除目标容器:

1
docker rm  <容器ID或名称>

再删除目标镜像

查看镜像:

1
docker images

删除镜像:

1
docker rmi IMAGE_ID

搭建CTF题目环境

一. 上传项目到服务器

个人使用WinSCP,优点是可视化比较好,微软的可视化一向比较nice。自己mkdir一个目录储存项目即可。

二. 构建Docker镜像

Dockerfile 所在目录下,打开终端或命令提示符,执行以下命令来构建 Docker 镜像:

1
docker build -t your-app-name .

这里的 your-app-name 是你给你的 Docker 镜像起的名字,. 指的是当前目录,即 Dockerfile 所在的目录。