惯性聚合 高效追踪和阅读你感兴趣的博客、新闻、科技资讯
阅读原文 在惯性聚合中打开

推荐订阅源

爱范儿
爱范儿
让小产品的独立变现更简单 - ezindie.com
让小产品的独立变现更简单 - ezindie.com
WordPress大学
WordPress大学
Y
Y Combinator Blog
I
InfoQ
美团技术团队
罗磊的独立博客
B
Blog RSS Feed
GbyAI
GbyAI
小众软件
小众软件
IT之家
IT之家
Engineering at Meta
Engineering at Meta
Blog — PlanetScale
Blog — PlanetScale
V
V2EX
Last Week in AI
Last Week in AI
酷 壳 – CoolShell
酷 壳 – CoolShell
Jina AI
Jina AI
MyScale Blog
MyScale Blog
博客园 - 聂微东
Microsoft Security Blog
Microsoft Security Blog
博客园 - 【当耐特】
Apple Machine Learning Research
Apple Machine Learning Research
The GitHub Blog
The GitHub Blog
T
The Blog of Author Tim Ferriss

轶哥博客

blog blog blog blog blog blog blog blog blog blog blog blog blog blog blog blog blog blog blog blog blog blog blog blog blog blog blog blog blog blog
blog
2020-08-06 · via 轶哥博客

除了部分监听端口过多的程序,其它情况Docker都非常适合用在内网应用的部署。

下载Docker离线文件

下载地址

官方下载地址:

https://download.docker.com/

阿里云镜像:

https://mirrors.aliyun.com/docker-ce/

清华大学镜像:

https://mirrors.tuna.tsinghua.edu.cn/docker-ce/

Azure中国:

https://mirror.azure.cn/docker-ce/

所需文件

首先判断操作系统、使用的CPU架构,依次进入目录下载安装包。

需要下载containerd.iodocker-ce-clidocker-ce-cli,三个文件。

例如Ubuntu 20.04 LTS (Focal Fossa)Amd64架构,需要下载:

https://mirrors.tuna.tsinghua.edu.cn/docker-ce/linux/ubuntu/dists/focal/pool/stable/amd64/containerd.io_1.2.13-2_amd64.deb

https://mirrors.tuna.tsinghua.edu.cn/docker-ce/linux/ubuntu/dists/focal/pool/stable/amd64/docker-ce-cli_19.03.12~3-0~ubuntu-focal_amd64.deb

https://mirrors.tuna.tsinghua.edu.cn/docker-ce/linux/ubuntu/dists/focal/pool/stable/amd64/docker-ce_19.03.12~3-0~ubuntu-focal_amd64.deb

例如CentOS 7x86_64架构,需要下载:

https://mirrors.aliyun.com/docker-ce/linux/centos/7/x86_64/stable/Packages/containerd.io-1.2.13-3.2.el7.x86_64.rpm

https://mirrors.aliyun.com/docker-ce/linux/centos/7/x86_64/stable/Packages/docker-ce-19.03.12-3.el7.x86_64.rpm

https://mirrors.aliyun.com/docker-ce/linux/centos/7/x86_64/stable/Packages/docker-ce-cli-19.03.12-3.el7.x86_64.rpm

保存镜像为文件

镜像保存:

docker save -o redis.tar redis:6.0.6

镜像加载:

docker load -i redis.tar

Dockerfile 示例

由于用作内网部署,建议将项目文件打包到镜像。

以部署Node.js程序为例,可以设置工作目录并将文件添加到工作目录(ADD . /project)。

FROM node:14.6.0-alpine

RUN apk add --no-cache \
  bash \
  ca-certificates \
  git

RUN mkdir /project

ADD . /project

WORKDIR /project

EXPOSE 80

CMD ["npm", "start"]

需要注意,如遇容器中文乱码,可以添加环境变量设置字符集,Ubuntu在Dockerfile中添加ENV LANG C.UTF-8CentOS添加ENV LC_ALL zh_CN.utf8,其它系统同理。