27

0x00 docker基础命令

docker images							查看本地存在的docker镜像

docker search 搜索docker镜像库

docker inspect 查看镜像详细信息

docker rmi image:tag 删除docker镜像

docker ps 查看运行的容器

docker kill 容器ID 杀死容器进程

docker rm 容器ID 删除容器

docker stop 容器ID 暂停运行容器

docker exec -ti 容器ID /bin/bash 进入容器

docker cp 文件 容器ID:路径 宿主机复制到容器

docker cp 容器ID:文件 路径 容器复制到宿主机

0x01 创建镜像

命令:

    docker commit

参数说明:

    -a , --author : 作者信息

    -m , --meassage : 提交消息

    -p , --pause=true : 提交时暂停容器运行

基于ubuntu搭建漏洞环境

image-20201224235833284

运行ubuntu并进入容器

docker run -ti ubuntu bash

image-20201225000325731

复制文件到容器中

docker cp redis-4.0.10.tar.gz 98e5e9d2ee6c:/

image-20201225002719115

image-20201225002735723

redis未授权就是常规流程安装即可。

打包成镜像

docker commit -a '测试' -m 'test.txt' 98e5e9d2ee6c time/test

image-20201225151301946

上传镜像到存储库(个人),首先使用docker本地登录

docker login		输入账号密码即可登录

image-20201225152119976

上传镜像

docker push images名

注意上传不成功,可能是因为tag名字不一致,需要和hub库的名字一致

image-20201225152731831

修改了名称后开始上传

成功

image-20201225152821679

image-20201225152846139

0x02 构建镜像

docker build

Dockerfile常用指令

类型 命令
基础镜像信息 FROM
维护者信息 MAINTAINER
镜像操作指令 RUN、COPY、ADD、EXPOSE、WORKDIR、ONBUILD、USER、VOLUME等
容器启动时执行命令 CMD、ENTRYPOINT

创建Dockerfile文件,以下命令是安装基于ubuntu安装redis,并映射端口,具体使用方法可参考菜鸟教程中的docker教程

FROM centos		//使用centos版本作为基础镜像
MAINTAINER Time 892732389@qq.com //创建者信息
RUN yum update \ //创建后执行命令,更新系统并安装常用系统组件
&& yum install -y gcc make pcre-devel zlib-devel tar zlib wget
RUN wget http://download.redis.io/releases/redis-4.0.10.tar.gz \ //下载redis
&& tar -zxf redis-4.0.10.tar.gz \ //解压
&& cd redis-4.0.10 \ //进入文件夹
&& make \ //编译
&& make install
EXPOSE 6937 //开启外部端口方便镜像端口映射
CMD redis-server //启动redis

image-20201226005613525

docker build -t centos_redis:v1 .	//构造镜像命令

构造成功

image-20201226010531825

docker run -d -p 6379:6379 centos_redis:v1

image-20201226010730558

0x05 参考链接

菜鸟教程:https://m.runoob.com/docker/

https://www.cnblogs.com/jsonhc/p/7767669.html

https://www.cnblogs.com/momoyan/p/12437312.html