Docker温故知新

Docker目前用的越来越多,前段时间接到一个项目:使用Docker部署AWD靶场,实际操作起来还是有很多细节的,这里特地总结一下,写给自己看。

Docker安装

这里我只写Ubuntu、Kali/Debian、CentOS下的安装,macOS和Windows平台的安装请自行百度。

Ubuntu/CentOS安装Docker

Ubuntu Linux系统耳熟能详的操作系统。 Bash

curl -fsSL get.docker.com -o get-docker.sh
sudo sh get-docker.sh --mirror Aliyun

Kali/Debian安装Docker

Kali是基于Debian封装的,所以两者安装方法大同小异。
Kali Linux安装Docker用网上那个一键安装脚本貌似有点问题,这里单独记录一下,以便自己和其他网友使用: Bash

# 添加Docker PGP密钥
curl -fsSL https://download.docker.com/linux/debian/gpg | sudo apt-key add -

# 配置docker apt源 我这里用的国内阿里云的docker下载源
echo 'deb https://mirrors.aliyun.com/docker-ce/linux/debian buster stable'> /etc/apt/sources.list.d/docker.list

# 更新apt源
apt update

# 如果之前安装了docker的话 这里得卸载旧版本docker
apt remove docker docker-engine docker.io

# 安装docker
apt install docker-ce

# 查看版本
docker version

开机自启

Bash

sudo systemctl enable docker
sudo systemctl start docker

Docke优化

Docker国内加速器

不替换源对话,docker pull 拉去镜像对速度实在太龟速了,如果你很佛系对话可以不进行更换 Bash

# 编辑这个文件,如果没有对话就创建这个文件
vim /etc/docker/daemon.json

内容如下: Json

{
  "registry-mirrors": [
    "http://hub-mirror.c.163.com"
  ]
}

这里我使用对是国内163网易源,其他源可以自行百度替换。
配置完成后重启服务才可以生效: Bash

sudo systemctl daemon-reload
sudo systemctl restart docker

Docker Portainer

Portainer是Docker一款可视化管理用具,用起来更加容易上手,部署的话也十分简单。 Bash

# 拉取镜像
docker pull portainer/portainer

# 一键部署
docker volume create portainer_data
docker run -d -p 9000:9000 --name portainer --restart always -v /var/run/docker.sock:/var/run/docker.sock -v portainer_data:/data portainer/portainer

浏览器访问本地的9000端口即可进入到设置密码界面:

设置一个密码,即可进入系统:

这里选择管理本地Docker的选项,点击就可以看到比较容易理解的Docker管理即界面了。

Docker基础命令

搜索镜像

Bash

docker search 关键词

下载镜像

Bash

docker pull 镜像名

查看已下载的镜像列表

Bash

docker image ls

创建并使用容器

docker run -it --name 容器名 镜像名/镜像ID /bin/bash

查看当前容器

Bash

docker ps -a

统计信息

Bash

docker stats

启动容器

Bash

docker start 容器名/容器ID

重启容器

docker restart 容器名/容器ID

终止容器

docker stop 容器名/容器ID

连接容器

Bash

docker exec -it 容器名/容器ID /bin/bash

删除容器

docker rm 容器名/容器ID

删除镜像

docker rmi 镜像名/容器ID

端口映射

部署一个容器,并将80端口映射到宿主机的8000端口上 Bash

# 可以使用--name自定义部署的容器名
docker run -d -p 8000:80 --name 容器名 镜像名

# 也可以直接通过镜像部署
docker run -d -p 8000:80 镜像名

dockerfile部署镜像

Bash

docker build -t 自定义镜像名称 .

docker-compose部署

Bash

docker-compose up -d

Docker compose

docker compose 神器,国内的vulhubs靶场就是用的docker compose规范,所以这里有必要安装一下。
首先来查看最新版本https://github.com/docker/compose/releases

我写这篇文章的时候目前是1.25.0-rc2版本,具体根据新版本的变化自行调整下面命令来安装: Bash

# 下载docker-compose
curl -L https://github.com/docker/compose/releases/download/1.25.0-rc2/docker-compose-`uname -s`-`uname -m` -o /usr/local/bin/docker-compose

# 给docker-compose执行权限
chmod +x /usr/local/bin/docker-compose

# 查看docker compose版本
[email protected]:~# docker-compose  version
docker-compose version 1.25.0-rc2, build 661ac20e
docker-py version: 4.0.1
CPython version: 3.7.4
OpenSSL version: OpenSSL 1.1.0k  28 May 2019

来源: 国光
文章作者: 国光
文章链接: https://www.sqlsec.com/2019/10/docker2.html
本文章著作权归作者所有,任何形式的转载都请注明出处。

暂无评论

发送评论 编辑评论


				
|´・ω・)ノ
ヾ(≧∇≦*)ゝ
(☆ω☆)
(╯‵□′)╯︵┴─┴
 ̄﹃ ̄
(/ω\)
∠( ᐛ 」∠)_
(๑•̀ㅁ•́ฅ)
→_→
୧(๑•̀⌄•́๑)૭
٩(ˊᗜˋ*)و
(ノ°ο°)ノ
(´இ皿இ`)
⌇●﹏●⌇
(ฅ´ω`ฅ)
(╯°A°)╯︵○○○
φ( ̄∇ ̄o)
ヾ(´・ ・`。)ノ"
( ง ᵒ̌皿ᵒ̌)ง⁼³₌₃
(ó﹏ò。)
Σ(っ °Д °;)っ
( ,,´・ω・)ノ"(´っω・`。)
╮(╯▽╰)╭
o(*////▽////*)q
>﹏<
( ๑´•ω•) "(ㆆᴗㆆ)
😂
😀
😅
😊
🙂
🙃
😌
😍
😘
😜
😝
😏
😒
🙄
😳
😡
😔
😫
😱
😭
💩
👻
🙌
🖕
👍
👫
👬
👭
🌚
🌝
🙈
💊
😶
🙏
🍦
🍉
😣
Source: github.com/k4yt3x/flowerhd
颜文字
Emoji
小恐龙
花!
上一篇
下一篇