Docker build Dockerfile 构建镜像 - 二

Dockerfile 制作镜像

https://hub.docker.com/  搜索需要镜像;

https://hub.docker.com/_/centos/

官方示例:

centos:6

1、这里把需要文件放置在同一个 centos6 文件夹下

2、下载 centos-6-docker.tar.xz 文件;

wget https://raw.githubusercontent.com/CentOS/sig-cloud-instance-images/da050e2fc6c28d8d72d8bf78c49537247b5ddf76/docker/centos-6-docker.tar.xz

3、创建 Dockerfile 文件  ( D 必须大写)

cat Dockerfile

FROM scratch
MAINTAINER https://github.com/CentOS/sig-cloud-instance-images
ADD centos-6-docker.tar.xz /

LABEL org.label-schema.schema-version="1.0" \
org.label-schema.name="CentOS Base Image" \
org.label-schema.vendor="CentOS" \
org.label-schema.license="GPLv2" \
org.label-schema.build-date="20181208"

RUN yum install openssh-server -y

EXPOSE 22
CMD [
"/bin/bash"]

Dockerfile 一些参数:

FROM 指定镜像源
ADD 添加上传文件到容器 / 目录下
RUN 安装执行命令
EXPOSE 开放暴露端口
CMD 执行环境变量

4、build 构建镜像

docker build -t centos6.1  .

-t 镜像命名  
. Dockerfile 当前目录;

 5、查看构建的镜像:

centos:7 的 centos-7-docker.tar.xz  可以在这里下载:

https://github.com/CentOS/sig-cloud-instance-images/tree/a77b36c6c55559b0db5bf9e74e61d32ea709a179/docker
wget https://raw.githubusercontent.com/CentOS/sig-cloud-instance-images/a77b36c6c55559b0db5bf9e74e61d32ea709a179/docker/centos-7-docker.tar.xz

centos 7 创建Dockerfile  

# cat Dockerfile

FROM scratch
ADD centos-7-docker.tar.xz /

LABEL org.label-schema.schema-version="1.0" \
org.label-schema.name="CentOS Base Image" \
org.label-schema.vendor="CentOS" \
org.label-schema.license="GPLv2" \
org.label-schema.build-date="20181205"

CMD ["/bin/bash"]

6、进入到容器 :

# docker exec -it centos6.3 /bin/bash

另一种进入方式:
docker attach centos6.3

7、查看 网络 

8、 宿主机上测试 ssh 远程:

 

相关推荐:

如何在Python Flask中实现敏感词过滤_构建自定义中间件

Flask中不能直接在路由里做敏感词过滤,因重复代码多、易漏检、难统一响应格式,且无法覆盖所有入口;应使用WSGI中间件或before_request钩子在请求进入视图前拦截,中间件更底层可靠,职责仅为阻断而非清洗。 Flask中为什么不能直接在路由里做敏感词过滤 因为重复代码多、易漏检、难统一响应...

Docker容器挂掉后Python如何自动报警与拉起重启

Python无法可靠获取容器崩溃的退出信号,应通过外部监控(如dockerevents)报警,并用tini或os.execv确保信号传递,避免在容器内使用supervisor等进程管理器。 容器崩溃时Python怎么拿到确切的退出信号 Docker容器挂掉,本质是主进程(ENTRYPOINT或CMD...

文本分类在Python里怎么应对新词与未登录词_使用Subword与BPE算法构建分词器

结论:subword/BPE并非解决未登录词,而是让模型无需认识整词——靠子词拼合;关键在训练与下游任务的tokenization逻辑对齐。 直接说结论:用subword或BPE不是“解决”未登录词,而是让模型根本不需要“认识”整词——它靠子词拼出来。关键不在分词器本身多聪明,而在训练时是否对齐了s...