7.3.1 fails with SEAFILE_SERVER_LETSENCRYPT=true
r3361 opened this issue · 7 comments
Tried to update from tag latest to 7.3.1.
docker-compose.yaml
version: '2.0'
services:
db:
image: mariadb:10.1
container_name: seafile-mysql
environment:
- MYSQL_ROOT_PASSWORD=************
- MYSQL_LOG_CONSOLE=true
volumes:
- /opt/seafile-mysql/db:/var/lib/mysql
networks:
- seafile-net
memcached:
image: memcached:1.5.6
container_name: seafile-memcached
entrypoint: memcached -m 512
networks:
- seafile-net
seafile:
image: seafileltd/seafile-mc:7.1.3
container_name: seafile
ports:
- "80:80"
- "443:443" # If https is enabled, cancel the comment.
- "8080:8080"
volumes:
- /opt/seafile-data:/shared # Requested, specifies the path to Seafile data persistent store.
environment:
- DB_HOST=db
- DB_ROOT_PASSWD=************** # Requested, the value shuold be root's password of MySQL service.
- TIME_ZONE=Etc/UTC # Optional, default is UTC. Should be uncomment and set to your local time zone.
- SEAFILE_ADMIN_EMAIL=************** # Specifies Seafile admin user, default is 'me@example.com'.
- SEAFILE_ADMIN_PASSWORD=************** # Specifies Seafile admin password, default is 'asecret'.
- SEAFILE_SERVER_LETSENCRYPT=true
- SEAFILE_SERVER_HOSTNAME=seafile.domain.tld # Specifies your host name if https is enabled.
depends_on:
- db
- memcached
networks:
- seafile-net
networks:
seafile-net:
If I try to start this docker-compose, I get the following error and a force quit of the seafile container:
*** Running /etc/my_init.d/01_create_data_links.sh...
*** Booting runit daemon...
*** Runit started as PID 23
*** Running /scripts/start.py...
[2020-04-23 06:32:21] Preparing for letsencrypt ...
Traceback (most recent call last):
File "/scripts/start.py", line 86, in <module>
main()
File "/scripts/start.py", line 51, in main
init_letsencrypt()
File "/scripts/bootstrap.py", line 32, in init_letsencrypt
wait_for_nginx()
File "/scripts/utils/__init__.py", line 288, in wait_for_nginx
if ':80 ' in output:
TypeError: a bytes-like object is required, not 'str'
*** /scripts/start.py exited with status 1.
*** Shutting down runit daemon (PID 23)...
*** Running /etc/my_init.post_shutdown.d/10_syslog-ng.shutdown...
*** Killing all processes...
If remove - SEAFILE_SERVER_LETSENCRYPT=true
from docker-compose.yaml, the container will start with no issue. But only with http.
尝试从最新标签更新到7.3.1。
docker-compose.yaml
version: '2.0' services: db: image: mariadb:10.1 container_name: seafile-mysql environment: - MYSQL_ROOT_PASSWORD=************ - MYSQL_LOG_CONSOLE=true volumes: - /opt/seafile-mysql/db:/var/lib/mysql networks: - seafile-net memcached: image: memcached:1.5.6 container_name: seafile-memcached entrypoint: memcached -m 512 networks: - seafile-net seafile: image: seafileltd/seafile-mc:7.1.3 container_name: seafile ports: - "80:80" - "443:443" # If https is enabled, cancel the comment. - "8080:8080" volumes: - /opt/seafile-data:/shared # Requested, specifies the path to Seafile data persistent store. environment: - DB_HOST=db - DB_ROOT_PASSWD=************** # Requested, the value shuold be root's password of MySQL service. - TIME_ZONE=Etc/UTC # Optional, default is UTC. Should be uncomment and set to your local time zone. - SEAFILE_ADMIN_EMAIL=************** # Specifies Seafile admin user, default is 'me@example.com'. - SEAFILE_ADMIN_PASSWORD=************** # Specifies Seafile admin password, default is 'asecret'. - SEAFILE_SERVER_LETSENCRYPT=true - SEAFILE_SERVER_HOSTNAME=seafile.domain.tld # Specifies your host name if https is enabled. depends_on: - db - memcached networks: - seafile-net networks: seafile-net:
如果尝试启动此docker-compose,则会收到以下错误,并强制退出seafile容器:
*** Running /etc/my_init.d/01_create_data_links.sh... *** Booting runit daemon... *** Runit started as PID 23 *** Running /scripts/start.py... [2020-04-23 06:32:21] Preparing for letsencrypt ... Traceback (most recent call last): File "/scripts/start.py", line 86, in <module> main() File "/scripts/start.py", line 51, in main init_letsencrypt() File "/scripts/bootstrap.py", line 32, in init_letsencrypt wait_for_nginx() File "/scripts/utils/__init__.py", line 288, in wait_for_nginx if ':80 ' in output: TypeError: a bytes-like object is required, not 'str' *** /scripts/start.py exited with status 1. *** Shutting down runit daemon (PID 23)... *** Running /etc/my_init.post_shutdown.d/10_syslog-ng.shutdown... *** Killing all processes...
如果
- SEAFILE_SERVER_LETSENCRYPT=true
从docker-compose.yaml中删除,则容器将毫无问题地启动。但是只能用http。
Maybe you can find the answer here https://download.seafile.com/published/seafile-manual/docker/pro-edition/Deploy%20Seafile-pro%20with%20Docker.md
I have exactly the same config and exactly the same error when I moved to Ubuntu 18.04 to 20.04.
I can add that rolling back to seafileltd/seafile-mc:7.0.5 in the docker-compose file fixes the issue for me. seafile-mc:latest (7.1.3) looks broken, maybe a python 2=>3 issue?
Same issue here, any solution?
Reverting to seafileltd/seafile-mc:7.0.5 fixes the issue.
It has been fixed now. You can download a new version of 7.1.3.
I can confirm that it works. Thanks for your work!
I can confirm it worked, did have to delete the local image before it updated