【Docker入门&Linux下Docker部署推送】
文前白话
一、关于容器的基础了解
-
阿里云-云原生技术公开课: 容器是相对于进程而言的。 容器就是一个视图隔离、资源可限制、独立文件系统的进程集合。 所谓“视图隔离”就是能够看到部分进程以及具有独立的主机名等;控制资源使用率则是可以对于内存大小以及 CPU 使用个数等进行限制。 容器就是一个进程集合,它将系统的其他资源隔离开来,具有自己独立的资源视图。 容器镜像:容器运行时所需要的所有的文件集合。 Dockerfile - 描述镜像构建步骤
二、Docker入门&Linux下Docker部署推送
1、在Ubuntu 18.04下安装docker 环境:
-
执行:
sudo apt-get update sudo apt install docker.io
2、开通阿里云容器镜像服务:
点击注册开通: .
.
-
主要步骤如:
- 创建好本地仓库以后会跳转到: - 也可查看:
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基础镜像,更多其他基础镜像说明.
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 .
-
构建完成后可先验证是否正常运行,正常运行后再进行推送。 ⑤、本地调试 先查看镜像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训练练习链接
零基础入门Docker-cuda练习场【免费GPU】: .
附:Docker文档地址
-
.
上一篇:
IDEA上Java项目控制台中文乱码