首页 > 其他分享 >简单的Mac版Docker封装

简单的Mac版Docker封装

时间:2023-03-06 12:45:59浏览次数:58  
标签:ago 封装 MB months Mac Docker sha256 docker latest

之前没有封装过docker文件,所以这个是一个尝试的记录。

我的目录文件如下:

 

 

这里面的这个 requirements.txt 是自动生成的。生成方法如下:

安装pipreqs:

pip install pipreqs

进入你的工程所在目录,然后输入下面的命令,等待命令运行结束后,就会生成requirements.txt文件了。

(playwright_tianmao) (base) kaka@KakadeMacBook-Pro playwright_tianmao % pipreqs --encoding=utf8 ./project
INFO: Successfully saved requirements file in ./project/requirements.txt

编写Dockerfile

FROM python:3.10

WORKDIR ./project

ADD . .

RUN pip install -r requirements.txt

CMD ["python", "./src/tian_mao.py"]

Dockerfile 文件这么写,具体参数看这Docker Dockerfile

Docker命令行

好了,重头戏来了,先cd 到文件夹内部,当然需要把Docker这个程序运行起来。
现在执行docker images是没有我新打包的。

(base) kaka@KakadeMacBook-Pro ~ % docker images
REPOSITORY                     TAG        IMAGE ID       CREATED         SIZE
clickhouse/clickhouse-server   <none>     854810a3ea35   2 months ago    705MB
redis                          alpine     7bf9ac7d3b84   3 months ago    28.1MB
mysql/mysql-server             8.0        55af6abb77a6   4 months ago    527MB
fp2_0-8.1/app                  latest     53b297f8c7a6   6 months ago    1.61GB
clickhouse/clickhouse-server   latest     d846490c0466   14 months ago   794MB
prom/prometheus                latest     ccf2871d6122   14 months ago   198MB
grafana/grafana-enterprise     latest     05048bc21afe   15 months ago   290MB
prom/alertmanager              latest     44a71f29f42b   18 months ago   55.3MB

我们执行命令:

(playwright_tianmao) (base) kaka@KakadeMacBook-Pro project % docker build -t playwright:tian_mao .
[+] Building 218.8s (9/9) FINISHED                                                                                                                                                       
 => [internal] load build definition from Dockerfile                                                                                                                                0.2s
 => => transferring dockerfile: 160B                                                                                                                                                0.1s
 => [internal] load .dockerignore                                                                                                                                                   0.1s
 => => transferring context: 2B                                                                                                                                                     0.0s
 => [internal] load metadata for docker.io/library/python:3.10                                                                                                                     18.5s
 => [1/4] FROM docker.io/library/python:3.10@sha256:dbbfcbf95f6b596d2be1d8f3b368016619f78f829facf6f2e361bea1151794e5                                                              156.0s
 => => resolve docker.io/library/python:3.10@sha256:dbbfcbf95f6b596d2be1d8f3b368016619f78f829facf6f2e361bea1151794e5                                                                0.0s
 => => sha256:dbbfcbf95f6b596d2be1d8f3b368016619f78f829facf6f2e361bea1151794e5 2.60kB / 2.60kB                                                                                      0.0s
 => => sha256:ac9d381bd1e98fa8759f80ff42db63c8fce4ac9407b2e7c8e0f031ed9f96432b 5.14MB / 5.14MB                                                                                      2.5s
 => => sha256:aa9c5b49b9db3dd2553e8ae6c2081b77274ec0a8b1f9903b0e5ac83900642098 10.66MB / 10.66MB                                                                                    8.8s
 => => sha256:d1500c47f0bbf08f47ab4d297468e7831747f574b85f9f6dd673e63ff0a9b401 2.22kB / 2.22kB                                                                                      0.0s
 => => sha256:07de2f474278e926aad908f01856d8ba91e04af47110b33d27878f53ef6ff798 8.63kB / 8.63kB                                                                                      0.0s
 => => sha256:94a23d3cb5be24659b25f17537307e7f568d665244f6a383c1c6e51e31080749 53.60MB / 53.60MB                                                                                   34.5s
 => => sha256:841dd868500b6685b6cda93c97ea76e817b427d7a10bf73e9d03356fac199ffd 54.67MB / 54.67MB                                                                                   33.7s
 => => sha256:d4bb9078a4a2954fb77553c7f66912068fb62ff7cf431160389ebd36fab5c7ad 189.42MB / 189.42MB                                                                                129.1s
 => => sha256:a2a3f568fa148d3f688d658df426874f3bd527d8d407de9abe0677b1d96dd4a4 6.16MB / 6.16MB                                                                                     36.9s
 => => sha256:fbde58cfb3dc7784a2ea058b9322cd8b5aa216c82c7c165afaf5ef0ea9a89f8d 18.70MB / 18.70MB                                                                                   55.5s
 => => extracting sha256:94a23d3cb5be24659b25f17537307e7f568d665244f6a383c1c6e51e31080749                                                                                           2.3s
 => => sha256:b4487881872bb6c801e24159eeaab3e06f631d9d75ce232f63bd7eabefd653bd 234B / 234B                                                                                         37.7s
 => => extracting sha256:ac9d381bd1e98fa8759f80ff42db63c8fce4ac9407b2e7c8e0f031ed9f96432b                                                                                           0.4s
 => => sha256:eb92ccb4c378d424537b97a66a474219c692b2d507fb2bc41240d254b90d8983 2.35MB / 2.35MB                                                                                     41.6s
 => => extracting sha256:aa9c5b49b9db3dd2553e8ae6c2081b77274ec0a8b1f9903b0e5ac83900642098                                                                                           0.5s
 => => extracting sha256:841dd868500b6685b6cda93c97ea76e817b427d7a10bf73e9d03356fac199ffd                                                                                           3.3s
 => => extracting sha256:d4bb9078a4a2954fb77553c7f66912068fb62ff7cf431160389ebd36fab5c7ad                                                                                          21.0s
 => => extracting sha256:a2a3f568fa148d3f688d658df426874f3bd527d8d407de9abe0677b1d96dd4a4                                                                                           1.2s
 => => extracting sha256:fbde58cfb3dc7784a2ea058b9322cd8b5aa216c82c7c165afaf5ef0ea9a89f8d                                                                                           1.4s
 => => extracting sha256:b4487881872bb6c801e24159eeaab3e06f631d9d75ce232f63bd7eabefd653bd                                                                                           0.0s
 => => extracting sha256:eb92ccb4c378d424537b97a66a474219c692b2d507fb2bc41240d254b90d8983                                                                                           0.3s
 => [internal] load build context                                                                                                                                                   0.0s
 => => transferring context: 11.04kB                                                                                                                                                0.0s
 => [2/4] WORKDIR ./project                                                                                                                                                         0.5s
 => [3/4] ADD . .                                                                                                                                                                   0.0s
 => [4/4] RUN pip install -r requirements.txt                                                                                                                                      42.4s
 => exporting to image                                                                                                                                                              1.0s
 => => exporting layers                                                                                                                                                             1.0s
 => => writing image sha256:281e004ab42d5b4314a4216eb1552b9cff68dcb55afdcf564b88a2fb8985b068                                                                                        0.0s
 => => naming to docker.io/library/playwright:tian_mao                                                                                                                              0.0s

Use 'docker scan' to run Snyk tests against images to find vulnerabilities and learn how to fix them

再次执行docker images:

(base) kaka@KakadeMacBook-Pro ~ % docker images
REPOSITORY                     TAG        IMAGE ID       CREATED         SIZE
playwright                     tian_mao   281e004ab42d   8 minutes ago   1.01GB
clickhouse/clickhouse-server   <none>     854810a3ea35   2 months ago    705MB
redis                          alpine     7bf9ac7d3b84   3 months ago    28.1MB
mysql/mysql-server             8.0        55af6abb77a6   4 months ago    527MB
fp2_0-8.1/app                  latest     53b297f8c7a6   6 months ago    1.61GB
clickhouse/clickhouse-server   latest     d846490c0466   14 months ago   794MB
prom/prometheus                latest     ccf2871d6122   14 months ago   198MB
grafana/grafana-enterprise     latest     05048bc21afe   15 months ago   290MB
prom/alertmanager              latest     44a71f29f42b   18 months ago   55.3MB

删除:

(base) kaka@KakadeMacBook-Pro ~ % docker rmi 281e004ab42d
Untagged: playwright:tian_mao
Deleted: sha256:281e004ab42d5b4314a4216eb1552b9cff68dcb55afdcf564b88a2fb8985b068

然后:

docker load -i test_tianmao.tar

查看结果:

(base) kaka@KakadeMacBook-Pro project % docker load -i test_tianmao.tar 
Loaded image: playwright:tian_mao
(base) kaka@KakadeMacBook-Pro project % docker images                                            
REPOSITORY                     TAG        IMAGE ID       CREATED          SIZE
playwright                     tian_mao   281e004ab42d   30 minutes ago   1.01GB
clickhouse/clickhouse-server   <none>     854810a3ea35   2 months ago     705MB
redis                          alpine     7bf9ac7d3b84   3 months ago     28.1MB
mysql/mysql-server             8.0        55af6abb77a6   4 months ago     527MB
fp2_0-8.1/app                  latest     53b297f8c7a6   6 months ago     1.61GB
clickhouse/clickhouse-server   latest     d846490c0466   14 months ago    794MB
prom/prometheus                latest     ccf2871d6122   14 months ago    198MB
grafana/grafana-enterprise     latest     05048bc21afe   15 months ago    290MB
prom/alertmanager              latest     44a71f29f42b   18 months ago    55.3MB
(base) kaka@KakadeMacBook-Pro project % 

参考链接:

简单的Mac版Docker封装需要传参的Python

 

标签:ago,封装,MB,months,Mac,Docker,sha256,docker,latest
From: https://www.cnblogs.com/kaka0318/p/17183362.html

相关文章

  • 在MacAir上搭建人工智能AI画图环境
    在MacAir上搭建人工智能AI画图环境在MacAir上,可以通过开源的StableDiffusion项目自行搭建AI画图环境,这里以Intel处理器的MacAir为例。StableDiffusion项目硬件要求较......
  • 关于starter-封装自己的starter
    starter概念在SpringBoot中,Starter是一组预配置的依赖项,旨在使您的应用程序轻松地集成和配置所需的功能。Starter通常包括自动配置类,该类为您的应用程序配置必需的Bean和......
  • MacOs 下调试 8086 汇编
    所需工具x86DOS模拟器:dosboxDOS上运行调试工具:DEBUG.EXE汇编器(链接器):DOS上运行的MASM.EXE、LINK.EXE或者直接使用MacOs自带的nasmexe下载地址:链接:https:/......
  • docker-compose搭建redis哨兵模式(一主二从三哨兵)
    参考:https://blog.csdn.net/band_mmbx/article/details/1264280411、安装docker和docker-compose2、配置redis2.1下载redis.conf配置文件因为docker启动redis是默认没......
  • 云服务器搭建frp+docker+nginx转发到本机Nas以及docker服务
    #云服务器搭建frp+docker+nginx转发到本机Nas以及docker服务如果觉得样式不好:跳转即可(md文件复制过来有些样式会不一样)原文地址:https://www.firstsaofan.top/archives......
  • docker 常用命令docker run系列
    基本格式指令:1dockerrun[OPTIONS]IMAGE[COMMAND][ARG…]用法:通过run命令创建一个新的容器(container)常用选项说明-d,--detach:指定容器在后台运行,默认为fal......
  • Mac OS 打开pycharm立即闪退,报错initial heap size set to a larger value than the m
    电脑突然不能打开pycharm了,一打开就闪退,通过终端启动发现报错initialheapsizesettoalargervaluethanthemaximumheapsizeidea。  在网上搜索后,大家说修改......
  • Docker CLI docker buildx create 常用命令
    Docker是一个开源的应用容器引擎,让开发者可以打包他们的应用以及依赖包到一个可移植的镜像中,然后发布到任何流行的Linux或Windows操作系统的机器上,也可以实现虚拟化。Doc......
  • DotNet 5.0 部署 Docker 注意
    1.添加docker环境参数后会报错      日志显示  只好按照以下注释   2.Dockerfile问题  日志记载        日志显示......
  • 浙里办通用请求的封装
    开发浙里办应用都知道,我们发布到线上的接口需要按这样的方式去请求:但是往往本地开发的时候是连得公司测试环境,而且接口调用方式也不长这样。我第一次开发浙里办项目的时......