【Docker入门&Linux下Docker部署推送】

【Docker入门&Linux下Docker部署推送】

  • 文前白话
    • 一、关于容器的基础了解
    • 二、Docker入门&Linux下Docker部署推送
    • 阿里天池docker训练练习链接
      • 附:Docker文档地址

文前白话

一、关于容器的基础了解

  • 阿里云-云原生技术公开课: 什么是容器与镜像?如何构建容器与镜像

  • 容器是相对于进程而言的

  • 容器就是一个视图隔离、资源可限制、独立文件系统的进程集合

  • 所谓“视图隔离”就是能够看到部分进程以及具有独立的主机名等;控制资源使用率则是可以对于内存大小以及 CPU 使用个数等进行限制。

  • 容器就是一个进程集合,它将系统的其他资源隔离开来,具有自己独立的资源视图。

  • 容器镜像容器运行时所需要的所有的文件集合

    • Dockerfile - 描述镜像构建步骤

二、Docker入门&Linux下Docker部署推送

1、在Ubuntu 18.04下安装docker 环境:

  • 执行:
sudo apt-get update
sudo apt install docker.io

2、开通阿里云容器镜像服务:

点击注册开通: 阿里云容器镜像服务注册.

参考官方<手把手超详细操作说明 :>.

  • 主要步骤如:

【Docker入门&Linux下Docker部署推送】_第1张图片
【Docker入门&Linux下Docker部署推送】_第2张图片- 创建好本地仓库以后会跳转到:
【Docker入门&Linux下Docker部署推送】_第3张图片- 也可查看:
【Docker入门&Linux下Docker部署推送】_第4张图片

3、构建镜像并推送

在安装好Docker环境的本机/服务器构建并推送容器镜像。过程中可能会使用docker命令,如拉取docker pull,推送docker push,构建docker build等等。

  • 准备文件

新建一个文件夹(例如: tianchi_submit_demo,创建的文件夹自定)用于存放目标镜像所需的文件,文件夹中内容文件示例,其中hello_world.py中是自己的代码部分:

sudo mkdir -p /home/tianchi_docker_test 
cd /home/tianchi_docker_test
  • ①、拉取基础镜像文件-Python基础镜像,更多其他基础镜像说明【OPENLIST】Base Docker Image List.
docker pull registry.cn-shanghai.aliyuncs.com/tcc-public/python:3
  • ②、准备本地所需文件:

文件夹中内容文件示例,其中hello_world.py中是自己的代码部分:
(下图中创建的文件夹为:docker )
在这里插入图片描述

  • 并且,主要是Dockerfile文件,Dockerfile配置文件参考,Dockerfile是固定名称,注意首字母大写。Dockerfile中命令皆大写:其中添加的内容实例如下:

## 从天池基础镜像构建
FROM registry.cn-shanghai.aliyuncs.com/tcc-public/python:3

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

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

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

  • hello-world.py 中写好自己的做题的代码:

  • run.sh 脚本启动文件:
    (run.sh中添加的内容参考:)

	python hello_world.py   # 注意文件名称的一致性

③、构建镜像

  • 在服务器上直接操作执行:
  • docker build -t registry.cn-shenzhen.aliyuncs.com/test_for_tianchi/test_for_tianchi_submit:1.0 .
  • 注意:registry.~~~是上面创建仓库的公网地址,用自己仓库地址替换。地址后面的:1.0为自己指定的版本号,用于区分每次build的镜像。最后的**.**是构建镜像的路径,不可以省掉。
  • 即:
sudo docker build -t registry.cn-shanghai.aliyuncs.com/命名空间/仓库名称:版本号
sudo docker build -t registry.cn-shanghai.aliyuncs.com/wupke/docker_test:1.0 .

【Docker入门&Linux下Docker部署推送】_第5张图片

  • 构建完成后可先验证是否正常运行,正常运行后再进行推送。
    ⑤、本地调试
    • 先查看镜像ID:
sudo docker images

在这里插入图片描述

  • 调试,执行:

$ sudo docker run  643a823cb573 sh run.sh

hello world!

  • 运行正常, 可以进行推送。
    ⑥ 、推送到镜像仓库:
  • 首先登陆阿里云Docker Registry ,执行:
$ sudo docker login --username=用户名 registry.cn-shanghai.aliyuncs.com
$ sudo docker login --username=ken****0724 registry.cn-shanghai.aliyuncs.com
  • 用于登录的用户名为阿里云账号全名,密码为开通服务时设置的密码。

  • 再推送到仓库:

$ sudo docker push registry.cn-shanghai.aliyuncs.com/命名空间/仓库名称:[镜像版本号]

$ sudo docker push registry.cn-shanghai.aliyuncs.com/wupke/docker_test:1.0

【Docker入门&Linux下Docker部署推送】_第6张图片

阿里天池docker训练练习链接

零基础入门Docker-cuda练习场【免费GPU】: link.

附:Docker文档地址

  • Docker文档地址 .

你可能感兴趣的:(Docker,Linux,docker,linux,容器)