<?xml version="1.0" encoding="utf-8" standalone="yes"?><rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom"><channel><title>Docker on lategege 的技术博客</title><link>https://lategege.com/tags/docker/</link><description>Recent content in Docker on lategege 的技术博客</description><generator>Hugo -- gohugo.io</generator><language>zh-cn</language><lastBuildDate>Sun, 06 Aug 2023 13:30:42 +0000</lastBuildDate><atom:link href="https://lategege.com/tags/docker/index.xml" rel="self" type="application/rss+xml"/><item><title>docker构建镜像推送到自建nexus3仓库</title><link>https://lategege.com/p/docker%E6%9E%84%E5%BB%BA%E9%95%9C%E5%83%8F%E6%8E%A8%E9%80%81%E5%88%B0%E8%87%AA%E5%BB%BAnexus3%E4%BB%93%E5%BA%93/</link><pubDate>Sun, 06 Aug 2023 13:30:42 +0000</pubDate><guid>https://lategege.com/p/docker%E6%9E%84%E5%BB%BA%E9%95%9C%E5%83%8F%E6%8E%A8%E9%80%81%E5%88%B0%E8%87%AA%E5%BB%BAnexus3%E4%BB%93%E5%BA%93/</guid><description>&lt;p&gt;本文以谷歌图片压缩开源项目squoosh为例，制作docker镜像并推送至nexus3仓库&lt;/p&gt;
&lt;hr/&gt;
&lt;ul&gt;
&lt;li&gt;一、squoosh工程是纯网站应用，所以docker容器只要基于nginx即可，先克隆代码到本地
&lt;pre&gt;&lt;code class="language-shell"&gt;git clone https://github.com/GoogleChromeLabs/squoosh.git
#进入squoosh
cd squoosh &lt;/code&gt;&lt;/pre&gt;&lt;/li&gt;
&lt;li&gt;二、在当前目录下创建文件并编辑，文件名保存为Dockerfile
&lt;pre&gt;&lt;code class="language-shell"&gt;FROM nginx:alpine
ENV PORT=80
ENV NGINX_PORT=${PORT}
COPY ./build /usr/share/nginx/html&lt;/code&gt;&lt;/pre&gt;&lt;/li&gt;
&lt;li&gt;三、登录你的nexus3私服
&lt;pre&gt;&lt;code class="language-shell"&gt;#假设你的nexus3私服地址为:lategege.com, docker仓库的端口为6666，使用的协议为https 账号为admin 密码为123
docker login lategege.com:6666 -u admin -p 123&lt;/code&gt;&lt;/pre&gt;&lt;/li&gt;
&lt;li&gt;四、构建并推送镜像
&lt;pre&gt;&lt;code class="language-shell"&gt;docker build -t lategege.com:6666/squoosh .
docker push lategege.com:6666/squoosh&lt;/code&gt;&lt;/pre&gt;&lt;/li&gt;
&lt;li&gt;五、退出登录
&lt;pre&gt;&lt;code class="language-shell"&gt;docker logout lategege.com:6666&lt;/code&gt;&lt;/pre&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;hr/&gt;
&lt;p&gt;使用nexus3中的镜像就很简单了&lt;/p&gt;
&lt;ol&gt;
&lt;li&gt;portainer.io : 如果用portainer.io管理docker,那在settings-&amp;gt;Registries-&amp;gt;Add registry-&amp;gt;选择Custom registry，自定义一个名称，填入你的docker 地址，用户名密码即可。&lt;/li&gt;
&lt;li&gt;群晖: 注册表-&amp;gt;设置-&amp;gt;新增 填写相关地址用户名信息即可，并点击使用，在注册表中就可以看到你所有docker镜像了.&lt;/li&gt;
&lt;li&gt;在添加完仓库后就可以使用图形界面操作，如果用命令就按下面的操作。&lt;/li&gt;
&lt;li&gt;
&lt;pre&gt;&lt;code class="language-shell"&gt;#拉取
docker pull lategege.com:6666/squoosh
#运行
docker run -d --name squoosh -p 8080:80 lategege.com:6666/squoosh &lt;/code&gt;&lt;/pre&gt;
&lt;/li&gt;
&lt;/ol&gt;
&lt;hr/&gt;
&lt;p&gt;访问ip:端口 你就能得到一个部署在自己服务器的在线图片压缩工具了，以后有图片压缩需求就可以使用它了。&lt;/p&gt;</description></item><item><title>mac版docker容器添加磁盘挂载</title><link>https://lategege.com/p/mac%E7%89%88docker%E5%AE%B9%E5%99%A8%E6%B7%BB%E5%8A%A0%E7%A3%81%E7%9B%98%E6%8C%82%E8%BD%BD/</link><pubDate>Sun, 29 Jan 2023 07:49:28 +0000</pubDate><guid>https://lategege.com/p/mac%E7%89%88docker%E5%AE%B9%E5%99%A8%E6%B7%BB%E5%8A%A0%E7%A3%81%E7%9B%98%E6%8C%82%E8%BD%BD/</guid><description>&lt;!-- wp:paragraph --&gt;
&lt;p&gt;一、运行容器 docker inspect 容器id 查看 容器信息并记录。&lt;/p&gt;
&lt;!-- /wp:paragraph --&gt;
&lt;!-- wp:paragraph --&gt;
&lt;p&gt;二、mac下面 ~/Library/Containers/com.docker.docker/Data/vms/0/tty &lt;/p&gt;
&lt;!-- /wp:paragraph --&gt;
&lt;!-- wp:paragraph --&gt;
&lt;p&gt;如果有tty: &lt;/p&gt;
&lt;!-- /wp:paragraph --&gt;
&lt;!-- wp:code --&gt;
&lt;pre class="wp-block-code"&gt;&lt;code&gt;cd ~/Library/Containers/com.docker.docker/Data/vms/0/
screen tty&lt;/code&gt;&lt;/pre&gt;
&lt;!-- /wp:code --&gt;
&lt;!-- wp:paragraph --&gt;
&lt;p&gt;如果没有tty:&lt;/p&gt;
&lt;!-- /wp:paragraph --&gt;
&lt;!-- wp:code --&gt;
&lt;pre class="wp-block-code"&gt;&lt;code&gt;docker run -it --privileged --pid=host 8652b9f0cb4c nsenter -t 1 -m -u -n -i sh&lt;/code&gt;&lt;/pre&gt;
&lt;!-- /wp:code --&gt;
&lt;!-- wp:paragraph --&gt;
&lt;p&gt;其中8652b9f0cb4c是镜像id&lt;/p&gt;
&lt;!-- /wp:paragraph --&gt;
&lt;!-- wp:paragraph --&gt;
&lt;p&gt;mac中的docker有两层虚拟机，两者的目的都是进入docker第一层虚拟机来修改docker配置&lt;/p&gt;
&lt;!-- /wp:paragraph --&gt;
&lt;!-- wp:paragraph --&gt;
&lt;p&gt;三、修改容器配置&lt;/p&gt;
&lt;!-- /wp:paragraph --&gt;
&lt;!-- wp:code --&gt;
&lt;pre class="wp-block-code"&gt;&lt;code&gt;$ vi /var/lib/docker/containers/{容器id}/config.v2.json
$ vi /var/lib/docker/containers/{容器id}/hostconfig.json&lt;/code&gt;&lt;/pre&gt;
&lt;!-- /wp:code --&gt;
&lt;!-- wp:paragraph --&gt;
&lt;p&gt;在config.v2.json的MountPoints节点下添加挂载信息,可参考如下：&lt;/p&gt;
&lt;!-- /wp:paragraph --&gt;
&lt;!-- wp:code --&gt;
&lt;pre class="wp-block-code"&gt;&lt;code&gt; "/etc/xxx": {
 "Source": "/data/xxx",
 "Destination": "/etc/xxx",
 "RW": true,
 "Name": "",
 "Driver": "",
 "Type": "bind",
 "Propagation": "rprivate",
 "Spec": {
 "Type": "bind",
 "Source": "/data/xxx",
 "Target": "/etc/xxx/"
 },
 "SkipMountpointCreation": false
 }&lt;/code&gt;&lt;/pre&gt;
&lt;!-- /wp:code --&gt;
&lt;!-- wp:paragraph --&gt;
&lt;p&gt;在hostconfig.json的Binds节点添加挂载信息，可参考如下：&lt;/p&gt;
&lt;!-- /wp:paragraph --&gt;
&lt;!-- wp:code --&gt;
&lt;pre class="wp-block-code"&gt;&lt;code&gt; "/data/xxx:/etc/xxx/"&lt;/code&gt;&lt;/pre&gt;
&lt;!-- /wp:code --&gt;
&lt;!-- wp:paragraph --&gt;
&lt;p&gt;四、修改后一定要保存，保存后关闭docker,然后重启启动运行容器即可。&lt;/p&gt;
&lt;!-- /wp:paragraph --&gt;</description></item><item><title>mac版docker开启virtiofs提升100%IO效率</title><link>https://lategege.com/p/mac%E7%89%88docker%E5%BC%80%E5%90%AFvirtiofs%E6%8F%90%E5%8D%87100-io%E6%95%88%E7%8E%87/</link><pubDate>Wed, 21 Sep 2022 02:49:19 +0000</pubDate><guid>https://lategege.com/p/mac%E7%89%88docker%E5%BC%80%E5%90%AFvirtiofs%E6%8F%90%E5%8D%87100-io%E6%95%88%E7%8E%87/</guid><description>&lt;!-- wp:paragraph --&gt;
&lt;p&gt;一、开启方式如下图：Experimental features -&amp;gt; Enable VirtosFs...&lt;/p&gt;
&lt;!-- /wp:paragraph --&gt;
&lt;!-- wp:image {"sizeSlug":"large"} --&gt;
&lt;figure class="wp-block-image size-large"&gt;&lt;img alt="" src="https://img.lategege.com:30443/images/web/2022/9-21/1.png"/&gt;&lt;/figure&gt;
&lt;!-- /wp:image --&gt;
&lt;!-- wp:paragraph --&gt;
&lt;p&gt;二、未开启前写入速度测试(测试硬盘为Nvme协议的西数SN730)，平均17.4m/s&lt;/p&gt;
&lt;!-- /wp:paragraph --&gt;
&lt;!-- wp:image {"sizeSlug":"large"} --&gt;
&lt;figure class="wp-block-image size-large"&gt;&lt;img alt="" src="https://img.lategege.com:30443/images/web/2022/9-21/2.png"/&gt;&lt;figcaption&gt;三、开启后43.8m/s，提升了一倍还多。&lt;/figcaption&gt;&lt;/figure&gt;
&lt;!-- /wp:image --&gt;
&lt;!-- wp:image {"sizeSlug":"large"} --&gt;
&lt;figure class="wp-block-image size-large"&gt;&lt;img alt="" src="https://img.lategege.com:30443/images/web/2022/9-21/3.png"/&gt;&lt;/figure&gt;
&lt;!-- /wp:image --&gt;
&lt;!-- wp:paragraph --&gt;
&lt;p&gt;四、开启这个docker实验功能的目的是为了提升编译android源码的效率，实测确实编译效率提升显著。&lt;/p&gt;
&lt;!-- /wp:paragraph --&gt;
&lt;!-- wp:paragraph --&gt;
&lt;p&gt;另外该实验功能在使用sed 命令操作有时候会遇到权限问题，通过升级sed 版本至sed 4.8即可解决。sed 4.8已经修复了这个问题，下载地址：https://savannah.gnu.org/forum/forum.php?forum_id=9647&lt;/p&gt;
&lt;!-- /wp:paragraph --&gt;</description></item><item><title>docker(docker-compose)搭建chevereto图床</title><link>https://lategege.com/p/docker-docker-compose-%E6%90%AD%E5%BB%BAchevereto%E5%9B%BE%E5%BA%8A/</link><pubDate>Fri, 18 Feb 2022 12:52:44 +0000</pubDate><guid>https://lategege.com/p/docker-docker-compose-%E6%90%AD%E5%BB%BAchevereto%E5%9B%BE%E5%BA%8A/</guid><description>&lt;!-- wp:paragraph --&gt;
&lt;p&gt;docker搭建chevereto图床，最方便的是使用docker-compose，搭建步骤如下:&lt;/p&gt;
&lt;!-- /wp:paragraph --&gt;
&lt;!-- wp:paragraph --&gt;
&lt;p&gt;一、安装docker-compose:&lt;/p&gt;
&lt;!-- /wp:paragraph --&gt;
&lt;!-- wp:code --&gt;
&lt;pre class="wp-block-code"&gt;&lt;code&gt;&lt;code&gt;git clone https:&lt;em&gt;//github.com/docker/compose/releases/download/1.28.2/docker-compose-Linux-x86_64 -O /usr/local/bin/docker-compose&lt;/em&gt;&lt;/code&gt;
&lt;code&gt;chmod +x /usr/local/bin/docker-compose&lt;/code&gt;
&lt;code&gt;docker-compose --version&lt;/code&gt;&lt;/code&gt;&lt;/pre&gt;
&lt;!-- /wp:code --&gt;
&lt;!-- wp:paragraph --&gt;
&lt;p&gt;二、ssh登录服务器，touch docker-compose.yaml&lt;/p&gt;
&lt;!-- /wp:paragraph --&gt;
&lt;!-- wp:code --&gt;
&lt;pre class="wp-block-code"&gt;&lt;code&gt;version: '3'
&lt;p&gt;services:
db:
image: mariadb
volumes:
- database:/var/lib/mysql:rw
restart: always
networks:
- private
environment:
MYSQL_ROOT_PASSWORD: chevereto
MYSQL_DATABASE: chevereto
MYSQL_USER: chevereto
MYSQL_PASSWORD: chevereto&lt;/p&gt;
&lt;p&gt;chevereto:
depends_on:
- db
image: nmtan/chevereto
restart: always
networks:
- private
environment:
CHEVERETO_DB_HOST: db
CHEVERETO_DB_USERNAME: chevereto
CHEVERETO_DB_PASSWORD: chevereto
CHEVERETO_DB_NAME: chevereto
CHEVERETO_DB_PREFIX: che_
volumes:
- chevereto-images:/var/www/html/images:rw
- chevereto-config:/var/www/html:rw
ports:
- 9000:80&lt;/p&gt;
&lt;p&gt;networks:
private:
volumes:
database:
chevereto-images:
chevereto-config:&lt;/code&gt;&lt;/pre&gt;&lt;/p&gt;
&lt;!-- /wp:code --&gt;
&lt;!-- wp:paragraph --&gt;
&lt;p&gt;三、在当前目录下执行docker-compose up -d &lt;/p&gt;
&lt;!-- /wp:paragraph --&gt;
&lt;!-- wp:paragraph --&gt;
&lt;p&gt;四、访问ip:9000即可&lt;/p&gt;
&lt;!-- /wp:paragraph --&gt;
&lt;!-- wp:paragraph --&gt;
&lt;p&gt;五、配置去除上传大小限制，打开chevereto-config目录，编辑隐藏文件.htaccess，在最后一行&amp;lt;IfModule&amp;gt;前面添加如下配置：&lt;/p&gt;
&lt;!-- /wp:paragraph --&gt;
&lt;!-- wp:code --&gt;
&lt;pre class="wp-block-code"&gt;&lt;code&gt;php_value post_max_size 64M
php_value upload_max_filesize 64M
php_value max_execution_time 100000000
php_value memory_limit 2048M
php_value upload_threads 8&lt;/code&gt;&lt;/pre&gt;
&lt;!-- /wp:code --&gt;
&lt;!-- wp:paragraph --&gt;
&lt;p&gt;六、可以在后台仪表盘--》设置--〉网站-》图片上传-〉最大上传大小中修改&lt;/p&gt;
&lt;!-- /wp:paragraph --&gt;</description></item><item><title>群晖nas搭建个人图书馆一(calibre-web环境搭建)</title><link>https://lategege.com/p/%E7%BE%A4%E6%99%96nas%E6%90%AD%E5%BB%BA%E4%B8%AA%E4%BA%BA%E5%9B%BE%E4%B9%A6%E9%A6%86%E4%B8%80-calibre-web%E7%8E%AF%E5%A2%83%E6%90%AD%E5%BB%BA/</link><pubDate>Fri, 17 Dec 2021 10:39:46 +0000</pubDate><guid>https://lategege.com/p/%E7%BE%A4%E6%99%96nas%E6%90%AD%E5%BB%BA%E4%B8%AA%E4%BA%BA%E5%9B%BE%E4%B9%A6%E9%A6%86%E4%B8%80-calibre-web%E7%8E%AF%E5%A2%83%E6%90%AD%E5%BB%BA/</guid><description>&lt;!-- wp:paragraph --&gt;
&lt;p&gt;如果你家里有一台群晖或者可以安装docker的服务器，不妨跟我一起从零开始搭建一个电子书图书馆，这个图书馆使用了开源项目calibre-web，这个项目是基于calibre这个单机版图书馆做出来的，这也是为什么下面需要在相应目录下存放一个calibre的数据库文件的原因。&lt;/p&gt;
&lt;!-- /wp:paragraph --&gt;
&lt;!-- wp:paragraph --&gt;
&lt;p&gt;calibre-web的功能很强大主要有以下几大功能点：&lt;/p&gt;
&lt;!-- /wp:paragraph --&gt;
&lt;!-- wp:paragraph --&gt;
&lt;p&gt;1、无缝集成calibre单机版图书馆，只要将calibre的数据库文件和相应的图书复制进calibre-web指定目录，calibre的所有书籍就可以通过web端管理阅读推送了。&lt;/p&gt;
&lt;!-- /wp:paragraph --&gt;
&lt;!-- wp:paragraph --&gt;
&lt;p&gt;2、支持上传下载图书、建立编辑书架功能(上传的时候可从互联网获取完善书籍信息并保存)&lt;/p&gt;
&lt;!-- /wp:paragraph --&gt;
&lt;!-- wp:paragraph --&gt;
&lt;p&gt;3、在线阅读pdf、epub等格式，支持的电子书格式众多。&lt;/p&gt;
&lt;!-- /wp:paragraph --&gt;
&lt;!-- wp:paragraph --&gt;
&lt;p&gt;3、支持电子书格式在线转换，如pdf---&amp;gt;epub等等&lt;/p&gt;
&lt;!-- /wp:paragraph --&gt;
&lt;!-- wp:paragraph --&gt;
&lt;p&gt;4、支持图书推送到自己的kindle设备&lt;/p&gt;
&lt;!-- /wp:paragraph --&gt;
&lt;!-- wp:paragraph --&gt;
&lt;p&gt;5、支持在线注册用户，用户权限管理(如管理员可指定用户是否拥有上传、阅读、下载等权限)&lt;/p&gt;
&lt;!-- /wp:paragraph --&gt;
&lt;!-- wp:paragraph --&gt;
&lt;p&gt;下面就开始一步步来搭建calibre-web：&lt;/p&gt;
&lt;!-- /wp:paragraph --&gt;
&lt;!-- wp:paragraph --&gt;
&lt;p&gt;打开群晖docker&lt;/p&gt;
&lt;!-- /wp:paragraph --&gt;
&lt;!-- wp:image {"sizeSlug":"large"} --&gt;
&lt;figure class="wp-block-image size-large"&gt;&lt;img alt="" src="https://img.lategege.com:30443/images/web/2021/12-17/1.png"/&gt;&lt;figcaption class="wp-element-caption"&gt;在docker注册表中搜索calibre，出现很多镜像，星星最多的是linuxserver/calibre-web，为什么这个镜像星星最多，因为这个开发团队一直在维护更新，目前的版本已经非常完善了，所以选择这个镜像没有错，在下载之前我们需要了解这个镜像，点击这个镜像右上角的箭头去docker-hub看这个镜像的使用方法，群晖的镜像启动配置都要去看官方的说明文档而不要去参照网上博客的参数生搬硬套，一旦版本变了官方文档会变化，博客几乎不会更新。&lt;/figcaption&gt;&lt;/figure&gt;
&lt;!-- /wp:image --&gt;
&lt;!-- wp:image {"sizeSlug":"large"} --&gt;
&lt;figure class="wp-block-image size-large"&gt;&lt;img alt="" src="https://img.lategege.com:30443/images/web/2021/12-17/2.png"/&gt;&lt;figcaption class="wp-element-caption"&gt;来到镜像的说明网址:&lt;br/&gt;&lt;strong&gt;&lt;a href="https://registry.hub.docker.com/r/linuxserver/calibre-web/" rel="noreferrer noopener" target="_blank"&gt;https://registry.hub.docker.com/r/linuxserver/calibre-web/&lt;/a&gt;&lt;/strong&gt; 翻到参数一栏&lt;/figcaption&gt;&lt;/figure&gt;
&lt;!-- /wp:image --&gt;
&lt;!-- wp:image {"sizeSlug":"large"} --&gt;
&lt;figure class="wp-block-image size-large"&gt;&lt;img alt="" src="https://img.lategege.com:30443/images/web/2021/12-17/6.png"/&gt;&lt;/figure&gt;
&lt;!-- /wp:image --&gt;
&lt;!-- wp:paragraph --&gt;
&lt;p&gt;这里我们可以看到需要配置的完整内容，-p 代表端口映射是8083，-e代表环境变量配置 ，PUID\PGID是处理权限的，DOCKER_MODS是电子书转换功能需要配置的，OAUTHLIB_RELAX_TOKEN_SCOPE是谷歌登录所需的(当然如果要实现这个肯定要去google申请应用)，-v表示目录挂载 需要挂载两个目录分别是/config /books&lt;/p&gt;
&lt;!-- /wp:paragraph --&gt;
&lt;!-- wp:paragraph --&gt;
&lt;p&gt;当我们分析了官方文档后就知道下载完成后启动容器需要配置哪些内容了，这个无论是群晖内的docker还是其他系统的docker，查看官网说明文档是最直接的，切记不要盲目去看别人博客中写的。&lt;/p&gt;
&lt;!-- /wp:paragraph --&gt;
&lt;!-- wp:image {"sizeSlug":"large"} --&gt;
&lt;figure class="wp-block-image size-large"&gt;&lt;img alt="" src="https://img.lategege.com:30443/images/web/2021/12-17/3.png"/&gt;&lt;figcaption class="wp-element-caption"&gt;前面我们看到要挂载两个目录，我们在群晖docker目录中建一个文件夹linuxserver-cabibre-books，这个文件夹名称根据自己喜好来定，在文件夹里边建立books，config文件夹，文件名也是根据喜欢来写，没必要和我写的一样。&lt;/figcaption&gt;&lt;/figure&gt;
&lt;!-- /wp:image --&gt;
&lt;!-- wp:image {"sizeSlug":"large"} --&gt;
&lt;figure class="wp-block-image size-large"&gt;&lt;img alt="" src="https://img.lategege.com:30443/images/web/2021/12-17/4.png"/&gt;&lt;figcaption class="wp-element-caption"&gt;下完镜像后我们点击启动&lt;/figcaption&gt;&lt;/figure&gt;
&lt;!-- /wp:image --&gt;
&lt;!-- wp:image {"sizeSlug":"large"} --&gt;
&lt;figure class="wp-block-image size-large"&gt;&lt;img alt="" src="https://img.lategege.com:30443/images/web/2021/12-17/5.png"/&gt;&lt;figcaption class="wp-element-caption"&gt;勾选使用高权限执行容器&lt;/figcaption&gt;&lt;/figure&gt;
&lt;!-- /wp:image --&gt;
&lt;!-- wp:image {"sizeSlug":"large"} --&gt;
&lt;figure class="wp-block-image size-large"&gt;&lt;img alt="" src="https://img.lategege.com:30443/images/web/2021/12-17/7.png"/&gt;&lt;figcaption class="wp-element-caption"&gt;在存储空间中添加要挂载的两个文件夹，装载路径是根据官网文档的固定写法，不可变，左侧的文件夹是刚自己建立的两个文件夹。&lt;/figcaption&gt;&lt;/figure&gt;
&lt;!-- /wp:image --&gt;
&lt;!-- wp:image {"sizeSlug":"large"} --&gt;
&lt;figure class="wp-block-image size-large"&gt;&lt;img alt="" src="https://img.lategege.com:30443/images/web/2021/12-17/8.png"/&gt;&lt;figcaption class="wp-element-caption"&gt;容器端口8083是官方文档要求的不可变，本地端口只要是没占用的，可以自己定，这边填9000，这个是一会访问需要用到的。&lt;/figcaption&gt;&lt;/figure&gt;
&lt;!-- /wp:image --&gt;
&lt;!-- wp:image {"sizeSlug":"large"} --&gt;
&lt;figure class="wp-block-image size-large"&gt;&lt;img alt="" src="https://img.lategege.com:30443/images/web/2021/12-17/9.png"/&gt;&lt;/figure&gt;
&lt;!-- /wp:image --&gt;
&lt;!-- wp:paragraph --&gt;
&lt;p&gt;把官网要求加的环境变量全部加上，因为我们要使用全功能的容器，需要添加以下四个环境变量，如上图&lt;/p&gt;
&lt;!-- /wp:paragraph --&gt;
&lt;!-- wp:paragraph --&gt;
&lt;p&gt;PUID $(id -u) 这个写法是指用户的uid是当前用户，也就是哪个用户启动了这个容器，这个容器就使用哪个用户的权限，这个直接关系到挂载的文件夹是否可以读写，很重要。&lt;/p&gt;
&lt;!-- /wp:paragraph --&gt;
&lt;!-- wp:paragraph --&gt;
&lt;p&gt;PGID $(id -g) 这是指定当前用户组的id，保持这个写法即可&lt;/p&gt;
&lt;!-- /wp:paragraph --&gt;
&lt;!-- wp:paragraph --&gt;
&lt;p&gt;OAUTHLIB_RELAX_TOKEN_SCOPE 1 开启谷歌auth&lt;/p&gt;
&lt;!-- /wp:paragraph --&gt;
&lt;!-- wp:paragraph --&gt;
&lt;p&gt;DOCKER_MODS linuxserver/calibre-web:calibre 开启电子书格式转换的能力&lt;/p&gt;
&lt;!-- /wp:paragraph --&gt;
&lt;!-- wp:paragraph --&gt;
&lt;p&gt;补充：官方文档写的GUID\PGID 都填1000 这边不能按照官方的来，因为你不知道你系统的用户id是多少，如果要填写具体数据，就要开启ssh 在群晖中执行 id 用户名 来查看具体的GUID PGID，这里使用$(id -u) $(id -g)是一劳永逸的写法，实际上在读到这边的时候就是执行命令获取相应的id。&lt;/p&gt;
&lt;!-- /wp:paragraph --&gt;
&lt;!-- wp:image {"sizeSlug":"large"} --&gt;
&lt;figure class="wp-block-image size-large"&gt;&lt;img alt="" src="https://img.lategege.com:30443/images/web/2021/12-17/10.png"/&gt;&lt;figcaption class="wp-element-caption"&gt;检查下各项参数有没有问题&lt;/figcaption&gt;&lt;/figure&gt;
&lt;!-- /wp:image --&gt;
&lt;!-- wp:image {"sizeSlug":"large"} --&gt;
&lt;figure class="wp-block-image size-large"&gt;&lt;img alt="" src="https://img.lategege.com:30443/images/web/2021/12-17/11.png"/&gt;&lt;figcaption class="wp-element-caption"&gt;点应用启动，后面在我的网盘中下载一个空白的数据库文件&lt;/figcaption&gt;&lt;/figure&gt;
&lt;!-- /wp:image --&gt;
&lt;!-- wp:paragraph --&gt;
&lt;p&gt;链接: https://pan.baidu.com/s/13Y-DSQGvezoQiNyLXZW6tg 提取码: cjmt&lt;br/&gt;--来自百度网盘超级会员v5的分享 如下图&lt;/p&gt;
&lt;!-- /wp:paragraph --&gt;
&lt;!-- wp:image {"sizeSlug":"large"} --&gt;
&lt;figure class="wp-block-image size-large"&gt;&lt;img alt="" src="https://img.lategege.com:30443/images/web/2021/12-17/12.png"/&gt;&lt;/figure&gt;
&lt;!-- /wp:image --&gt;
&lt;!-- wp:paragraph --&gt;
&lt;p&gt;补充：为什么要这个数据库文件，因为calibre-web是基于calibre的，它并不负责图书库的创建，所以需要有一个数据仓库，metadata.db就是这个数据仓库，john schember是这个数据仓库中的一本指南书。如果你不使用我的这个空库文件，你也可以去电脑本地安装一个calibre软件，官方下载地址：&lt;a href="https://calibre-ebook.com/download"&gt;https://calibre-ebook.com/download&lt;/a&gt;，下载安装会让你指定一个数据库存放目录，安装完成后就会自动生成这个数据库文件和第一本一本指南书，去这个目录下拿文件即可。&lt;/p&gt;
&lt;!-- /wp:paragraph --&gt;
&lt;!-- wp:image {"sizeSlug":"large"} --&gt;
&lt;figure class="wp-block-image size-large"&gt;&lt;img alt="" src="https://img.lategege.com:30443/images/web/2021/12-17/13.png"/&gt;&lt;figcaption class="wp-element-caption"&gt;将文件拖动到群晖linuxserver-calibre-books/books目录中，这一步是calibre-web需要有一个数据库文件，没有后面会报错，做完以后可以登录，根据上面一步步下来，后面的配置会相当顺滑，所有的坑都不复存在了。&lt;/figcaption&gt;&lt;/figure&gt;
&lt;!-- /wp:image --&gt;
&lt;!-- wp:image {"sizeSlug":"large"} --&gt;
&lt;figure class="wp-block-image size-large"&gt;&lt;img alt="" src="https://img.lategege.com:30443/images/web/2021/12-17/14.png"/&gt;&lt;figcaption class="wp-element-caption"&gt;输入群晖nas ip:9000 上面配置的端口号访问网站即可登录，登录用户默认是admin, 密码admin123&lt;/figcaption&gt;&lt;/figure&gt;
&lt;!-- /wp:image --&gt;
&lt;!-- wp:paragraph --&gt;
&lt;p&gt;搭建完毕需要对calibre-web进行详细的配置，可以移步我的另一片博文：&lt;/p&gt;
&lt;!-- /wp:paragraph --&gt;
&lt;!-- wp:embed {"url":"https://www.lategege.com/?p=643","type":"wp-embed","providerNameSlug":"late哥哥笔记"} --&gt;
&lt;figure class="wp-block-embed is-type-wp-embed is-provider-late哥哥笔记 wp-block-embed-late哥哥笔记"&gt;&lt;div class="wp-block-embed__wrapper"&gt;
https://www.lategege.com/?p=643
&lt;/div&gt;&lt;/figure&gt;
&lt;!-- /wp:embed --&gt;</description></item><item><title>群晖docker部署imageproxy图片裁剪服务</title><link>https://lategege.com/p/%E7%BE%A4%E6%99%96docker%E9%83%A8%E7%BD%B2imageproxy%E5%9B%BE%E7%89%87%E8%A3%81%E5%89%AA%E6%9C%8D%E5%8A%A1/</link><pubDate>Thu, 05 Nov 2020 03:09:07 +0000</pubDate><guid>https://lategege.com/p/%E7%BE%A4%E6%99%96docker%E9%83%A8%E7%BD%B2imageproxy%E5%9B%BE%E7%89%87%E8%A3%81%E5%89%AA%E6%9C%8D%E5%8A%A1/</guid><description>&lt;!-- wp:paragraph --&gt;
&lt;p&gt;一、什么是图片裁剪服务？图片裁剪服务的用途。&lt;/p&gt;
&lt;!-- /wp:paragraph --&gt;
&lt;!-- wp:paragraph --&gt;
&lt;p&gt;做网站开发或者app开发的时候，页面图片中尺寸比例不一，如果运营作图人员为每一个比例都做一个图片，无疑增加了时间成本。为了解决这个问题，就引出了图片裁剪服务。市面上各种编程语言写的图片裁剪服务有很多，nginx也有相关模块可以使用。这里介绍imageproxy这个服务的部署，搭建环境为群晖docker。&lt;/p&gt;
&lt;!-- /wp:paragraph --&gt;
&lt;!-- wp:paragraph --&gt;
&lt;p&gt;对于imageproxy这个镜像的介绍可见 &lt;a href="https://registry.hub.docker.com/r/willnorris/imageproxy/"&gt;https://registry.hub.docker.com/r/willnorris/imageproxy/&lt;/a&gt;&lt;/p&gt;
&lt;!-- /wp:paragraph --&gt;
&lt;!-- wp:paragraph --&gt;
&lt;p&gt;首先进入群晖管理页面点击docker套件，选中注册表，搜索imageproxy 第一个willnorris/imageproxy双击下载&lt;/p&gt;
&lt;!-- /wp:paragraph --&gt;
&lt;!-- wp:image {"id":265,"sizeSlug":"large"} --&gt;
&lt;figure class="wp-block-image size-large"&gt;&lt;img alt="" class="wp-image-265" src="https://img.lategege.com:30443/images/web/uploads/2020/11/1-1-1024x547.png"/&gt;&lt;/figure&gt;
&lt;!-- /wp:image --&gt;
&lt;!-- wp:image {"id":266,"sizeSlug":"large"} --&gt;
&lt;figure class="wp-block-image size-large"&gt;&lt;img alt="" class="wp-image-266" src="https://img.lategege.com:30443/images/web/uploads/2020/11/2-1-1024x547.png"/&gt;&lt;/figure&gt;
&lt;!-- /wp:image --&gt;
&lt;!-- wp:paragraph --&gt;
&lt;p&gt;下载完成在映像中出现对应容器镜像，双击进行配置&lt;/p&gt;
&lt;!-- /wp:paragraph --&gt;
&lt;!-- wp:image {"id":267,"sizeSlug":"large"} --&gt;
&lt;figure class="wp-block-image size-large"&gt;&lt;img alt="" class="wp-image-267" src="https://img.lategege.com:30443/images/web/uploads/2020/11/3.png"/&gt;&lt;/figure&gt;
&lt;!-- /wp:image --&gt;
&lt;!-- wp:paragraph --&gt;
&lt;p&gt;端口设置，本地端口改成8080&lt;/p&gt;
&lt;!-- /wp:paragraph --&gt;
&lt;!-- wp:image {"id":268,"sizeSlug":"large"} --&gt;
&lt;figure class="wp-block-image size-large"&gt;&lt;img alt="" class="wp-image-268" src="https://img.lategege.com:30443/images/web/uploads/2020/11/4.png"/&gt;&lt;/figure&gt;
&lt;!-- /wp:image --&gt;
&lt;!-- wp:paragraph --&gt;
&lt;p&gt;切换到环境菜单 在命令中填入-addr 0.0.0.0:8080&lt;/p&gt;
&lt;!-- /wp:paragraph --&gt;
&lt;!-- wp:paragraph --&gt;
&lt;p&gt;点击应用，启动容器。&lt;/p&gt;
&lt;!-- /wp:paragraph --&gt;
&lt;!-- wp:paragraph --&gt;
&lt;p&gt;启动后测试裁剪效果 输入http://群晖ip地址:8080/100x100/原图片链接&lt;/p&gt;
&lt;!-- /wp:paragraph --&gt;
&lt;!-- wp:paragraph --&gt;
&lt;p&gt;我的测试地址为http://192.168.0.228:8080/100x100/https://ss2.bdstatic.com/70cFvnSh_Q1YnxGkpoWK1HF6hhy/it/u=3150312678,1466937360&amp;amp;fm=26&amp;amp;gp=0.jpg&lt;/p&gt;
&lt;!-- /wp:paragraph --&gt;
&lt;!-- wp:paragraph --&gt;
&lt;p&gt;效果如图:&lt;/p&gt;
&lt;!-- /wp:paragraph --&gt;
&lt;!-- wp:paragraph --&gt;
&lt;p&gt;裁剪过后：&lt;/p&gt;
&lt;!-- /wp:paragraph --&gt;
&lt;!-- wp:image {"id":269,"sizeSlug":"large"} --&gt;
&lt;figure class="wp-block-image size-large"&gt;&lt;img alt="" class="wp-image-269" src="https://img.lategege.com:30443/images/web/uploads/2020/11/11.jpg"/&gt;&lt;/figure&gt;
&lt;!-- /wp:image --&gt;
&lt;!-- wp:paragraph --&gt;
&lt;p&gt;未经过裁剪的原链接图片：&lt;/p&gt;
&lt;!-- /wp:paragraph --&gt;
&lt;!-- wp:image {"id":270,"sizeSlug":"large"} --&gt;
&lt;figure class="wp-block-image size-large"&gt;&lt;img alt="" class="wp-image-270" src="https://img.lategege.com:30443/images/web/uploads/2020/11/12.jpg"/&gt;&lt;/figure&gt;
&lt;!-- /wp:image --&gt;
&lt;!-- wp:paragraph --&gt;
&lt;p&gt;这里只是简单部署并测试效果。&lt;/p&gt;
&lt;!-- /wp:paragraph --&gt;
&lt;!-- wp:paragraph --&gt;
&lt;p&gt;更多使用方式请查看&lt;a href="https://registry.hub.docker.com/r/willnorris/imageproxy/"&gt;https://registry.hub.docker.com/r/willnorris/imageproxy/&lt;/a&gt; 介绍&lt;/p&gt;
&lt;!-- /wp:paragraph --&gt;</description></item></channel></rss>