Chevereto
一、启动chevereto
下载docker-compose:
git clone https://github.com/docker/compose/releases/download/1.28.2/docker-compose-Linux-x86_64 -O /usr/local/bin/docker-compose
chmod +x /usr/local/bin/docker-compose
docker-compose --version
见 Chevereto世界知名的开源图床搭建教程(Docker视频教程)
配置参考如下:
version: '3'
services:
db:
image: mariadb
volumes:
- database:/var/lib/mysql:rw
restart: always
networks:
- private
environment:
MYSQL_ROOT_PASSWORD: chevereto_root
MYSQL_DATABASE: chevereto
MYSQL_USER: chevereto
MYSQL_PASSWORD: chevereto
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: chv_
volumes:
- /mnt/hgfs/F:/F
- /mnt/hgfs/G:/G
- /mnt/hgfs/Server:/Server
- /mnt/hgfs/F/chevereto:/var/www/html/images
- /docker/chevereto/uploads.ini:/usr/local/etc/php/conf.d/uploads.ini
ports:
- 9013:80
networks:
private:
volumes:
database:
chevereto_images:
打开 ip:9013,即可访问图床页面:
二、修改文件大小&时间限制
默认最大文件上传仅有2M,故经常出现文件上传/导入不了的情况。故需要修改php.ini
,docker镜像中没有vim,暴力安装vim会出现命令行换行故障,不推荐。不如在建立容器数据卷映射的时候就把对应的目录映射一下。或者通过docker cp /docker/chevereto/.htaccess chevereto_chevereto_1:/var/www/html
复制进去,重启生效。
vi /var/www/html/.htaccess
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
修改文件后,在 http://sunie.top:9013/dashboard/settings/image-upload 修改实际文件上传大小,也修改到64M。
后来发现在上传本地图片时,30s就停止了,大概只能上传0.5GB,修改max_execution_time
,memory_limit
则基本上无限制上传。
三、Typora+PicGo Core+Chevereto图片自动上传个人服务器图床
参考Typora+PicGo Core+Chevereto实现笔记中的图片自动上传个人服务器图床
1.typora启用PicGo Core
添加C:\Users\Sunie\AppData\Roaming\Typora\picgo\win64
到环境变量以便picgo.exe
可以在命令行运行,启动cmd,输入picgo install web-uploader
安装插件,此插件适用于私人服务器图床
2.获取API key
3.编辑配置文件config.json
{
"picBed": {
"current": "web-uploader",
"web-uploader": {
"customBody": "{\"key\":\"your key\"}",
"customHeader": null,
"jsonPath": "image.url",
"paramName": "source",
"url": "http://sunie.top:9013/api/1/upload"
}
},
"picgoPlugins": {
"picgo-plugin-web-uploader": true
}
}
4.验证图片上传选项
四、其他错误
对于images
文件夹没有写权限,尝试在容器中chmod +x images/
还是无效
chmod 777 images/
就可以了。完整命令:
docker exec -it chevereto_chevereto_1 chmod 777 /var/www/html/images
piwigo
一、启动piwigo
以下两种方式均可,已经有了在运行的mysql容器直接选第二种即可。
1.方式一:docker-compose
version: "3"
services:
piwigo:
image: linuxserver/piwigo
network_mode: bridge
ports:
- 9011:80
links:
- db
volumes:
- /docker/piwigo/config:/config
- /mnt/hgfs/F:/F
- /mnt/hgfs/G:/G
- /mnt/hgfs/Server:/Server
restart: unless-stopped
db:
image: mysql
network_mode: bridge
environment:
MYSQL_USER: "piwigo"
MYSQL_PASSWORD: "piwigo"
MYSQL_DATABASE: "piwigo"
MYSQL_RANDOM_ROOT_PASSWORD: "true"
2. 方式二:link(已有mysql容器运行)
创建数据库:
docker exec -it mysql mysql -u root -p
mysql> create database piwigo default charset utf8 collate utf8_general_ci;
运行容器:
docker run -d -p 9011:80 \
-v /docker/piwigo/config:/config \
-v /mnt/hgfs/F:/F \
-v /mnt/hgfs/G:/G \
-v /mnt/hgfs/F/piwigo:/pictures \
--restart=always \
--link mysql \
--name piwigo linuxserver/piwigo
评论区