docker安装与使用

1、直接拉取天池比赛官方的基础镜像!
新建一个文件夹(例如tianchi_submit_demo)用于存放这次任务镜像所需的文件(这个方法二用到)。其中hello_world.py中是各位自己的代码部分,run.sh参考:python hello_world.py
result.json是自己代码生成的。
2、容器转换为镜像:
方法一:直接从外部导入,未用Dockerfile
1)外部文件导入container里,docker cp 外部文件路径 container_id:/www/  即/www的目录下。
docker cp D:\shiyanshiobject_deteciton\热身赛一布匹\tianchi_submit_demo f14a9c452f4a:/   
注意:好像需要把run.sh 、代码文件、result.json 也要放进镜像里面!!!最好将tianchi_submit_demo(包含前面三样)也放进去!(不放tianchi_submit_demo文件夹,我试过了!)
3)通过docker commit 容器id  镜像:版本(你想取得名字) 将容器转化成了镜像
方法二:直接用Dockerfile
新建一个文件夹(例如tianchi_submit_demo)用于存放这次任务镜像所需的文件,文件夹中内容示例,其中hello_world.py中是各位自己的代码部分,run.sh参考:python hello_world.py
result.json是自己代码生成的。
注:在docker软件中的container容器里进行这些操作,不是Windows系统的批处理!
1)mkdir 文件1   // 创建文件1(这个我还没试过,我是将文件1从外部导入)
2)cd ./tianchi_submit_demo  //进入文件
3)touch Dockerfile    //创建文件
4)vim Dockerfile    //编辑文件,如果vim无法识别,需要去下载vim。在使用docker容器时,有可能没有安装Vi, 安装Vi:apt-get install vim,如果提示:Unable to locate package vim,则需要敲:apt-get update, 等更新完毕以后再敲命令: apt-get install vim。
Dockerfile配置文件参考,Dockerfile是固定名称,注意首字母大写。Dockerfile中命令皆大写:
Dockerfile内容如下:
Base Images
从天池基础镜像构建
FROM registry.cn-shanghai.aliyuncs.com/tcc-public/python:3

把当前文件夹里的文件构建到镜像的根目录下
ADD . /

指定默认工作目录为根目录(需要把run.sh和生成的结果文件都放在该文件夹下,提交后才能运行)
WORKDIR /

镜像启动后统一执行 sh run.sh
CMD ["sh", "run.sh"]

输入自己要的内容信息,然后按一下esc键,这个时候切换模式。然后直接输入:wq,意思就是写完以后保存。
3、提交阶段:
1)sudo docker login --username=魏洛格 registry.cn-shenzhen.aliyuncs.com   //登录阿里云仓库
2)sudo docker tag [ImageId] registry.cn-shenzhen.aliyuncs.com/test_why/test_why_submit:[镜像版本号]  //将镜像改名保存
3)sudo docker push registry.cn-shenzhen.aliyuncs.com/test_why/test_why_submit:[镜像版本号]   //将镜像传送到阿里云仓库中
示例:(上面三条命令才是重点!其中windows下不用sudo,直接docker push就可)
使用"docker tag"命令重命名镜像,并将它通过专有网络地址推送至Registry。

sudo docker images
REPOSITORY                                                         TAG                 IMAGE ID            CREATED             VIRTUAL SIZE
registry.aliyuncs.com/acs/agent                                    0.7-dfb6816         37bb9c63c8b2        7 days ago          37.89 MB

 sudo docker tag 37bb9c63c8b2 registry-vpc.cn-shenzhen.aliyuncs.com/acs/agent:0.7-dfb6816
(这个要试试!!)构建完成后可先验证是否正常运行,正常运行后再进行推送。注:your_image是镜像id
CPU镜像:docker run your_image sh run.sh   
GPU镜像:nvidia-docker run your_image sh run.sh
使用 "docker push" 命令将该镜像推送至远程。
 sudo docker push registry-vpc.cn-shenzhen.aliyuncs.com/acs/agent:0.7-dfb6816


注:windows下批处理命令:
dir 显示所有文件
cd 进入文件
cd..  返回上一级目录

ubuntu命令
ls   :显示所有文件
cd ./  :进入文件里
touch 文件 : 生成文件
rm -f  Dockerfile :删除Dockerfile文件
rmdir  Dockerfile : 删除Dockerfile文件夹
待搞定!
 1、新建文件夹/root/docker/nginx ,在目录下新建一个名为Dockerfile的文件,在里面增加如下内容:

 2、在Dockerfile所在路径执行以下命令构建镜像:
    #  docker build -t nginx:liuq .

其中,-t指定镜像名字,命令最后的点(.)表示Dockerfile文件所在路径
Docker images 查看本地镜像

 docker ps -a 查看所有存在的container

Docker start 容器名 (启动容器)/ docker stop 容器名称(停止容器)

docker ps 查看运行container

Docker attach 容器名(我们使用docker ps查看到该容器信息,进入容器内)

Docker run (-it 进入交互页面)  --name=’a2’  your_image sh run.sh

docker commit  a2  镜像:版本 (将你的容器打包成一个镜像)

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

木羊子羽

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值