Docker使用教程

安装docker及其相关组件:

apt-get update               //更新软件
apt-get install
apt-get install apt-transport-https
apt-get install ca-certificates
apt-get install curl
apt-get install software-properties-common     //安装依赖包
curl -fsSL https://download.docker.com/linux/ubuntu/gpg | sudo apt-key add -	//添加官方密钥
add-apt-repository "deb [arch=amd64] https://download.docker.com/linux/ubuntu $(lsb_release -cs) stable"	//添加仓库
apt-get update              //更新软件
apt-get install docker-ce	//安装docker,默认安装最新版

docker使用教程:

docker -v                  //查看docker版本
vim /etc/docker/daemon.json  //编辑docker配置文件

添加以下代码之后保存

{
  "registry-mirrors": [
    "https://registry.docker-cn.com"
  ]
}//镜像加速

开机自启动(可选)

systemctl daemon-reload   //
systemctl restart docker  //重启docker

下载及运行镜像:

docker pull ubuntu:16.04   //拉取ubuntu:16.04镜像
docker images      //查看本地镜像
docker run -it -d --name ctf -p 8087:80 ubuntu:16.04       //用ubuntu:16.04镜像,命名为ctf,将容器80端口映射到8087端口
docker exec -it ctf /bin/bash      //进入docker容器的shell

docker常用命令:

docker ps     //查看正在运行的docker容器(可以看到容器的详细信息,如id,这个有大用处)

docker ps -a   //查看全部的docker容器

docker start id  //运行容器(id一般取前三位即可)

docker stop id   //停止运行docker容器

docker commit id ctf:ctf   //将容器固化为镜像

docker export id > ctf.tar  //打包docker压缩包供其他电脑使用

docker load < ctf.tar  //导入文件为docker镜像(如果出现open /var/lib/docker/tmp/docker-import-970689518/bin/json: no such file or directory,说明这个tar包缺少docker所需要的一些json文件,不能直接导入)

cat ctf.tar | docker import - ctf   //第二种导入方法(可以通过docker images查看是否导入成功)

docker run -p 2333:80 --name ctf -dit ctf:latest /bin/bash    //导入成功之后,用这条命令将镜像初始化为名字为ctf的容器,端口2333映射为容器的80端口

进入docker容器之后的一些配置:

apt-get update   //第一件事自然是换源,和更新软件源
apt-get install nginx  //安装nginx
apt-get install php7.0-fpm  //安装fpm拓展,可能版本会有所不同
cd /etc/nginx/site-avaliable
vim default              //编辑配置文件(有的镜像不自带vim,可以使用vi或自行下载)

修改以下内容:

location ~ \.php$ {
               include snippets/fastcgi-php.conf;
       #
       #       # With php7.0-cgi alone:
       #       fastcgi_pass 127.0.0.1:9000;
       #       # With php7.0-fpm:
               fastcgi_pass unix:/run/php/php7.0-fpm.sock;//改成自己的fpm拓展版本,版本一致则不用修改
       }

退出之后

vim /etc/nginx/nginx.conf    //编辑配置文件

找到

server {                                                                                                           
                listen       92.168.2.380;                                                                                           
                server_name  1;                                                                                 
                autoindex       on;   #是否允许访问目录
                location / {                                                                                               
                        root   html;                                                                                       
                        index  index.html index.htm;//就是这里,加一个index.php,即默认页面为index.html,index.htm或index.php
                }

修改完配置之后,重启nginx服务

service nginx restart
cd /var/www/html    //默认网站根目录
touch test.php      //新建文件(当没有该文件时vim会自动创建一个文件,所以我感觉有没有这条命令都无所谓)
vim test.php        //自己写入一些东西,然后通过网站端口访问该文件,看能否有回显,如果成功,就可以搭建ctf题了。

本机传文件进入容器

docker ps     //获取短id或名字

在这里插入图片描述
这里前面一长串的字符串就是短id,还有指定的名字等等。

docker inspect -f '{{.Id}}' ctf

即可得到id全称

docker cp 本地文件路径 id全称:容器路径  
docker cp id全称:容器文件路径 本地路径//从容器传文件进入本机

把容器的文件复制出来

获取id同上,短id即可。

docker cp id:docker文件路径 存放在本机的路径

重命名容器

docker rename 原名 新名

删除容器

先获取容器的id,比如
在这里插入图片描述

docker stop 696
docker rm 696865657e1c     //删除容器

删除镜像

和删除容器一样的流程:
获取镜像id:
在这里插入图片描述

docker rmi 664940c165c3
  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值