docker使用

参考https://www.runoob.com/docker/docker-dockerfile.html
刚安装需要登录
登录docker login

拉取镜像文件
sudo docker pull ubuntu:16.04

查看本地镜像信息
sudo docker images

删除镜像文件
sudo docker rmi ubuntu:16.04

容器
创建容器

-i: 交互式操作。
-t: 终端。
-d选项: 后台运行
–name 容器名字
ubuntu:16.04: ubuntu:16.04镜像。
/bin/bash:放在镜像名后的是命令,这里我们希望有个交互式 Shell,因此用的是 /bin/bash。
sudo docker run -it --name ubuntu16 ubuntu:16.04 /bin/bash

退出前台运行的docker
exit

查看容器的信息
docker ps -a

启动一个停止的容器
sudo docker start ubuntu-test  ubuntu-test为容器名字也可以是容器ID(用docker ps -a 查看)

停止一个容器
sudo docker stop ubuntu-test

重启
docker restart <容器 ID>

进入容器(也可以用docker attach 1e560fca3906 当退出的时docker 会停止)
sudo docker exec -it ubuntu16 /bin/bash    退出的时候docker 后台运行

docker 快照

  sudo docker export ubuntu16 > ~/Desktop/ubuntu16.tar   导出
  sudo cat ~/Desktop/ubuntu16.tar | sudo  docker import -  ubuntu:16   导入成镜像

删除容器
sudo docker rm -f sweet_swirles

清除所有停止的容器
sudo docker container prune

容器端口与本地端口绑定
sudo docker run -it -p 5000:5000 --name ubuntu-test ubuntu:16.04 /bin/bash

查看容器运行的进程
sudo docker port ubuntu-test

查看docker网络日志
sudo docker logs -f 3babc1b31657

本地文件复制到docker 上
sudo docker cp ~/Desktop/11.png ubuntu-test:/

快速创建容器
目录下写一个Dockerfile

FROM ubuntu:16.04
RUN apt install python\
&&......

FROM ubuntu:16.04

RUN sed -i "s/http:\/\/archive.ubuntu.com/http:\/\/mirrors.aliyun.com/g" /etc/apt/sources.list
RUN apt-get update && apt-get -y dist-upgrade
RUN apt-get install -y lib32z1 xinetd build-essential ssh

RUN mkdir /root/.ssh/ && chmod -R 700 /root/.ssh/
RUN sed -ri 's/^#?PermitRootLogin\s+.*/PermitRootLogin yes/' /etc/ssh/sshd_config
RUN echo "ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAABAQDbf3BmsMcE8H0zWImI8wGzrRc9uX4ZpX8Arxt+Z5t/b3S4DUXHfcvpnogVgOyux7NQDiKKYKbeu/234UQiysqoYNRMFnyy3vq4Biu7RlBizSCbJ3nDBrspmwNmkt4eY3ze8dyPJo7kt8fn8bBpo/W3KAkhJ8xcuKs1sfnOaOcU0x5HvFQN+3xAQkaXCcQme31SaW3A5F5/4tz3DQZPw/pxa0kCCLseATn01+GZ15iYDq04BxzqtI7RAQz2qWc5NscYDGrbunm+Hxrus/NsC0b+ZY051K9vpCGgsIDFkKTCFxuLO9RpqxpEkaoksQ6bPddV2IolZ8mqtWN/wtvoRdHL" >> /root/.ssh/authorized_keys
RUN chmod 600 /root/.ssh/authorized_keys


RUN groupadd ciscn && \
    useradd -g ciscn ciscn -m && \
    password=$(openssl passwd -1 -salt 'abcdefg' '123456') && \
    sed -i 's/^ciscn:!/ciscn:'$password'/g' /etc/shadow

RUN useradd -m ctf

COPY ./flag /flag
COPY ./pwn /pwn/pwn
COPY ./ctf.xinetd /etc/xinetd.d/ctf

RUN chown root:ctf /pwn/pwn && chmod 750 /pwn/pwn

RUN echo 'ctf - nproc 1500' >>/etc/security/limits.conf

CMD exec /bin/bash -c "/etc/init.d/xinetd start; trap : TERM INT; sleep infinity & wait"

EXPOSE 8888 
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值