Docker打镜像时怎么拉取git仓库

有时我们需要在Docker容器中去拉取git仓库,而这些个仓库很多时候是私有的,需要权限才能拉取。怎么做才合适呢?

我们知道git仓库一般都是支持通过SSH的方式去推送的拉取的,那把具有拉取权限的私钥加到Docker镜像里不就可以了吗?

听起来很简单,实际上要复杂一些,因为直接把私钥文件添加进镜像是不行的,因为还有其它的交互式操作。

Docker中创建可以使用GPU的容器

我们知道很多云服务商是提供显卡虚拟化服务的,比如Google Colab,可以在JupyterLab的运行时中选择GPU类型,阿里云的函数计算和PAI DSW也支持显卡类型的实例。

这些服务多半是以容器的方式部署的,以达到秒级启动的效果。

那么我们在创建Docker容器时,可不可以像它们那样使用主机上的显卡呢?

Docker怎么快速拉取镜像

要快速拉取Docker镜像,可以采取以下几个步骤:

1. 选择合适的镜像仓库:Docker Hub 是公认最大的镜像仓库。但是,访问Docker Hub 速度可能会特别缓慢。因此,您可以选择容易和我们国内主机交互的国内的仓库,例如阿里云、网易云等。

2. 使用合适的镜像标签:一个镜像可以由多个版本组成,每个版本可以通过一个标签来识别。标签可以是版本号、代码名称等等,例如一个名为Ubuntu的镜像可以通过标签20.04或者18.04来识别版本。请确保您选择的标签是正确的,以获得最佳的性能和可靠性。

3. 使用快速的网络:拉取Docker镜像需要下载很大的数据量。所以,使用快速的网络连接可以加快下载速度。您可以选择使用有线网络,或者尽量减少Wi-Fi干扰。

4. 使用Docker官方提供的镜像加速:Docker 官方为中国地区提供了镜像加速器,可以大幅加快拉取镜像的速度。只需在Docker客户端配置中添加阿里云提供的加速地址即可。

Docker Desktop绑定端口失败的问题

Docker Dessktop会偶发绑定端口失败的,而端口明明没有被占用,偶尔还会频繁地出现这个问题,自己测试倒还罢了,如果用于生产环境,则是一大BUG。

这个问题我在Windows 10和11上都遇到过。

看网上有人说是由于开启了Hyper-V导致TCP动态端口范围被修改的事,使用`netsh int ipv4 show dynamicport tcp`查看,发现端口范围果真是以1024开头的。

群晖的Docker套件与Docker官方版使用对比

群晖DSM系统下可以安装Docker套件,私以为比Docker的官方版本要好用太多。

首先是群晖的Docker有一套很好用的图形化管理界面。

就拿创建容器来说,基本上你需要设置的东西都可以在图形界面里配置,不用手动输命令了。

这还仅仅是个开始,关键是容器的修改,群晖做的非常好。一般来说,容器创建后我们可能还需要修改这些东西:

基于Ubuntu20.04构建自己的nginx和php Docker镜像

这篇是关于基于官方的Ubuntu 20.04 Docker镜像构建自己的nginx和php镜像。

首先为什么要构建自己的镜像而不是直接使用官方的nginx和php镜像?

虽然官方的包体积比较小且启动方便,但不是完全可控的,除非你对它的nginx和php配置非常熟悉,不然二次构建是比较麻烦的,比如装个扩展什么的。

所以我们要构建自己的镜像,想怎么用就怎么用,知根知底,改起来也方便。

豫ICP备19001387号-1