LINUX.ORG.RU
ФорумAdmin

ownCloud и Docker - недоступен снаружи

 ,


0

2

Контейнеры mysql и owncloud успешно запускаются

# docker-compose ps
     Name                   Command               State           Ports          
--------------------------------------------------------------------------------
neu_db_1         docker-entrypoint.sh mysqld      Up      3306/tcp, 33060/tcp    
neu_owncloud_1   /usr/bin/entrypoint /usr/b ...   Up      0.0.0.0:8080->8080/tcp 
[/ode]

Но снаружи главная страница недоступна по http://ip-address:8080

Файл .env

OWNCLOUD_VERSION=10.0
OWNCLOUD_DOMAIN=localhost
ADMIN_USERNAME=admin
ADMIN_PASSWORD=pwd
HTTP_PORT=8080
HTTPS_PORT=80443

Файл docker-compose.yml

version: '2.0'

volumes:
  files:
    driver: local
  mysql:
    driver: local
  backup:
    driver: local

services:
  owncloud:
    image: owncloud/server:${OWNCLOUD_VERSION}
    restart: always
    ports:
      - ${HTTP_PORT}:8080
    depends_on:
      - db

    environment:
      - OWNCLOUD_DOMAIN=${OWNCLOUD_DOMAIN}
      - OWNCLOUD_DB_TYPE=mysql
      - OWNCLOUD_DB_NAME=owncloud
      - OWNCLOUD_DB_USERNAME=owncloud
      - OWNCLOUD_DB_PASSWORD=pazzword
      - OWNCLOUD_DB_HOST=localhost
      - OWNCLOUD_ADMIN_USERNAME=${ADMIN_USERNAME}
      - OWNCLOUD_ADMIN_PASSWORD=${ADMIN_PASSWORD}
      - OWNCLOUD_MYSQL_UTF8MB4=true

    volumes:
      - files:/home/owncloud

  db:
    image: mysql
    restart: always
    environment:
      - MYSQL_ROOT_PASSWORD=passwd
      - MYSQL_USERNAME=owncloud
      - MYSQL_PASSWORD=passwd
      - MYSQL_DATABASE=owncloud
      - MYSQL_MAX_ALLOWED_PACKET=128M
      - MYSQL_INNODB_LOG_FILE_SIZE=64M

    volumes:
      - mysql:/var/lib/mysql

текущие правила iptables:

# iptables -L -n
Chain INPUT (policy ACCEPT)
target     prot opt source               destination         

Chain FORWARD (policy DROP)
target     prot opt source               destination         
DOCKER-ISOLATION  all  --  0.0.0.0/0            0.0.0.0/0           
ACCEPT     all  --  0.0.0.0/0            0.0.0.0/0            ctstate RELATED,ESTABLISHED
DOCKER     all  --  0.0.0.0/0            0.0.0.0/0           
ACCEPT     all  --  0.0.0.0/0            0.0.0.0/0           
ACCEPT     all  --  0.0.0.0/0            0.0.0.0/0           

Chain OUTPUT (policy ACCEPT)
target     prot opt source               destination         

Chain DOCKER (1 references)
target     prot opt source               destination         
ACCEPT     tcp  --  0.0.0.0/0            172.19.0.3           tcp dpt:8080

Chain DOCKER-ISOLATION (1 references)
target     prot opt source               destination         
DROP       all  --  0.0.0.0/0            0.0.0.0/0           
DROP       all  --  0.0.0.0/0            0.0.0.0/0           
DROP       all  --  0.0.0.0/0            0.0.0.0/0           
DROP       all  --  0.0.0.0/0            0.0.0.0/0           

Ответ на: комментарий от deadNightTiger
# iptables-save 
# Generated by iptables-save v1.6.0 on Thu Nov 29 16:26:00 2018
*nat
:PREROUTING ACCEPT [0:0]
:INPUT ACCEPT [0:0]
:OUTPUT ACCEPT [1:76]
:POSTROUTING ACCEPT [1:76]
:DOCKER - [0:0]
-A PREROUTING -m addrtype --dst-type LOCAL -j DOCKER
-A OUTPUT ! -d 127.0.0.0/8 -m addrtype --dst-type LOCAL -j DOCKER
-A POSTROUTING -s 172.19.0.0/16 ! -o br-16ba0d45882f -j MASQUERADE
-A POSTROUTING -s 172.18.0.0/16 ! -o br-4dc510063f2a -j MASQUERADE
-A POSTROUTING -s 172.17.0.0/16 ! -o docker0 -j MASQUERADE
-A POSTROUTING -s 172.19.0.3/32 -d 172.19.0.3/32 -p tcp -m tcp --dport 8080 -j MASQUERADE
-A DOCKER -i br-16ba0d45882f -j RETURN
-A DOCKER -i br-4dc510063f2a -j RETURN
-A DOCKER -i docker0 -j RETURN
-A DOCKER ! -i br-16ba0d45882f -p tcp -m tcp --dport 8080 -j DNAT --to-destination 172.19.0.3:8080
COMMIT
# Completed on Thu Nov 29 16:26:00 2018
# Generated by iptables-save v1.6.0 on Thu Nov 29 16:26:00 2018
*filter
:INPUT ACCEPT [47:5871]
:FORWARD DROP [0:0]
:OUTPUT ACCEPT [35:5374]
:DOCKER - [0:0]
:DOCKER-ISOLATION - [0:0]
-A FORWARD -j DOCKER-ISOLATION
-A FORWARD -o br-16ba0d45882f -m conntrack --ctstate RELATED,ESTABLISHED -j ACCEPT
-A FORWARD -o br-16ba0d45882f -j DOCKER
-A FORWARD -i br-16ba0d45882f ! -o br-16ba0d45882f -j ACCEPT
-A FORWARD -i br-16ba0d45882f -o br-16ba0d45882f -j ACCEPT
-A DOCKER -d 172.19.0.3/32 ! -i br-16ba0d45882f -o br-16ba0d45882f -p tcp -m tcp --dport 8080 -j ACCEPT
-A DOCKER-ISOLATION -i br-4dc510063f2a -o br-16ba0d45882f -j DROP
-A DOCKER-ISOLATION -i br-16ba0d45882f -o br-4dc510063f2a -j DROP
-A DOCKER-ISOLATION -i docker0 -o br-16ba0d45882f -j DROP
-A DOCKER-ISOLATION -i br-16ba0d45882f -o docker0 -j DROP
COMMIT
# Completed on Thu Nov 29 16:26:00 2018

# curl -v -I 127.0.0.1:8080
* Rebuilt URL to: 127.0.0.1:8080/
*   Trying 127.0.0.1...
* Connected to 127.0.0.1 (127.0.0.1) port 8080 (#0)
> HEAD / HTTP/1.1
> Host: 127.0.0.1:8080
> User-Agent: curl/7.47.0
> Accept: */*
> 
* Recv failure: Connection reset by peer
* Closing connection 0
curl: (56) Recv failure: Connection reset by peer

# curl -v -I 172.19.0.3:8080 
* Rebuilt URL to: 172.19.0.3:8080/
*   Trying 172.19.0.3...
* connect to 172.19.0.3 port 8080 failed: Connection refused
* Failed to connect to 172.19.0.3 port 8080: Connection refused
* Closing connection 0
curl: (7) Failed to connect to 172.19.0.3 port 8080: Connection refused

# curl -v -I ip-address:8080 
* Rebuilt URL to: ip-address:8080/
*   Trying ip-address...
* connect to ip-address port 8080 failed: Connection refused
* Failed to connect to ip-address port 8080: Connection refused
* Closing connection 0
curl: (7) Failed to connect to ip-address port 8080: Connection refused

gigantischer ()
Ответ на: комментарий от deadNightTiger

попробовал указать db вместо localhost, теперь owncloud контейнер рестартится каждые 2 секунды((

gigantischer ()

ты логи самого контейнера с owncloud смотел? Может он там и не может его запустить, а контейнер висит, вот ты и не можешь подключиться, как вариант.

v9lij ★★★★★ ()
Ответ на: комментарий от gigantischer

Знатная простыня iptables. Вам /16 не мало?
Но отдельно доставляет "-A POSTROUTING -s 172.19.0.3/32 -d 172.19.0.3/32 -p tcp -m tcp --dport 8080 -j MASQUERADE
"
Удачи вам.

anc ★★★★★ ()
Ответ на: комментарий от v9lij

А как просмотреть логи самого owncloud?

# docker-compose logs

показывает данные про mysql контейнер

gigantischer ()
Ответ на: комментарий от v9lij
# docker-compose logs
Attaching to neu_owncloud_1, neu_db_1
owncloud_1  | Creating volume folders...
owncloud_1  | Creating hook folders...
owncloud_1  | Waiting for MySQL...
owncloud_1  | wait-for-it: waiting 180 seconds for localhost:3306
owncloud_1  | wait-for-it: timeout occurred after waiting 180 seconds for localhost:3306
owncloud_1  | Creating volume folders...
owncloud_1  | Creating hook folders...
db_1        | 2018-11-30T09:21:55.593133Z 0 [Warning] [MY-011070] [Server] 'Disabling symbolic links using --skip-symbolic-links (or equivalent) is the default. Consider not using this option as it' is deprecated and will be removed in a future release.
db_1        | 2018-11-30T09:21:55.593272Z 0 [System] [MY-010116] [Server] /usr/sbin/mysqld (mysqld 8.0.13) starting as process 1
owncloud_1  | Waiting for MySQL...
db_1        | 2018-11-30T09:21:55.973666Z 0 [Warning] [MY-010068] [Server] CA certificate ca.pem is self signed.
owncloud_1  | wait-for-it: waiting 180 seconds for localhost:3306
owncloud_1  | wait-for-it: timeout occurred after waiting 180 seconds for localhost:3306
db_1        | 2018-11-30T09:21:55.975099Z 0 [Warning] [MY-011810] [Server] Insecure configuration for --pid-file: Location '/var/run/mysqld' in the path is accessible to all OS users. Consider choosing a different directory.
owncloud_1  | Creating volume folders...
db_1        | 2018-11-30T09:21:55.985996Z 0 [Warning] [MY-010315] [Server] 'user' entry 'mysql.infoschema@localhost' ignored in --skip-name-resolve mode.
owncloud_1  | Creating hook folders...
db_1        | 2018-11-30T09:21:55.986023Z 0 [Warning] [MY-010315] [Server] 'user' entry 'mysql.session@localhost' ignored in --skip-name-resolve mode.
owncloud_1  | Waiting for MySQL...
db_1        | 2018-11-30T09:21:55.986037Z 0 [Warning] [MY-010315] [Server] 'user' entry 'mysql.sys@localhost' ignored in --skip-name-resolve mode.
owncloud_1  | wait-for-it: waiting 180 seconds for localhost:3306
db_1        | 2018-11-30T09:21:55.986050Z 0 [Warning] [MY-010315] [Server] 'user' entry 'root@localhost' ignored in --skip-name-resolve mode.
db_1        | 2018-11-30T09:21:55.986084Z 0 [Warning] [MY-010323] [Server] 'db' entry 'performance_schema mysql.session@localhost' ignored in --skip-name-resolve mode.
db_1        | 2018-11-30T09:21:55.986093Z 0 [Warning] [MY-010323] [Server] 'db' entry 'sys mysql.sys@localhost' ignored in --skip-name-resolve mode.
db_1        | 2018-11-30T09:21:55.986108Z 0 [Warning] [MY-010311] [Server] 'proxies_priv' entry '@ root@localhost' ignored in --skip-name-resolve mode.
db_1        | 2018-11-30T09:21:55.989420Z 0 [Warning] [MY-010330] [Server] 'tables_priv' entry 'user mysql.session@localhost' ignored in --skip-name-resolve mode.
db_1        | 2018-11-30T09:21:55.989455Z 0 [Warning] [MY-010330] [Server] 'tables_priv' entry 'sys_config mysql.sys@localhost' ignored in --skip-name-resolve mode.
db_1        | 2018-11-30T09:21:55.994314Z 0 [System] [MY-010931] [Server] /usr/sbin/mysqld: ready for connections. Version: '8.0.13'  socket: '/var/run/mysqld/mysqld.sock'  port: 3306  MySQL Community Server - GPL.
db_1        | 2018-11-30T09:21:56.135201Z 0 [System] [MY-011323] [Server] X Plugin ready for connections. Socket: '/var/run/mysqld/mysqlx.sock' bind-address: '::' port: 33060

gigantischer ()
Ответ на: комментарий от anc

после выполнения iptables -F всё равно недоступен owncloud через браузер

gigantischer ()
Ответ на: комментарий от gigantischer

где эти правила iptables могут прописываться в системе? поиск нашел только /etc/default/ufw и /etc/init/ufw.conf, но это не то...

gigantischer ()
Ответ на: комментарий от v9lij

выполнил

root@DCA0C03:/home/neu# docker-compose exec owncloud bash

root@92b366f2ce25: /var/www/owncloud # occ user report
ownCloud is not installed - only a limited number of commands are available
Command "user" is not defined.  

Хотя при этом видно что owncloud контейнер запущен

# docker-compose ps
     Name                   Command               State          Ports         
------------------------------------------------------------------------------
neu_db_1         docker-entrypoint.sh mysqld      Up      3306/tcp, 33060/tcp  
neu_owncloud_1   /usr/bin/entrypoint /usr/b ...   Up      0.0.0.0:80->8080/tcp 

Получается сам контейнер owncloud запущен, но ownCloud не установлен полностью?

gigantischer ()
Ответ на: комментарий от gigantischer

Сам сервер внутри контейнера, возможно, не запущен, например упал по ошибке.
По логам видно

owncloud_1 | wait-for-it: timeout occurred after waiting 180 seconds for localhost:3306

значит в настройках owncloud подключение к базе идет по локалхосту, а надо передать в качестве хоста имя контейнера с mysql.

v9lij ★★★★★ ()
Ответ на: комментарий от v9lij

попробовал указать в настройках owncloud имя контейнера с mysql, теперь контейнер owncloud вылетает через короткий промежуток времени...

gigantischer ()
Ответ на: комментарий от v9lij
# docker logs owncloud
Creating volume folders...
Creating hook folders...
Waiting for MySQL...
wait-for-it: waiting 180 seconds for localhost:3306
Creating volume folders...
Creating hook folders...
Waiting for MySQL...
wait-for-it: waiting 180 seconds for localhost:3306

и

# docker logs mariadb
Cron is enabled, launching it!
Running mysql_install_db...
Installing MariaDB/MySQL system tables in '/var/lib/mysql' ...
2018-12-02 16:34:50 6 [Warning] Failed to load slave replication state from table mysql.gtid_slave_pos: 1146: Table 'mysql.gtid_slave_pos' doesn't exist
OK

To start mysqld at boot time you have to copy
support-files/mysql.server to the right place for your system


PLEASE REMEMBER TO SET A PASSWORD FOR THE MariaDB root USER !
To do so, start the server, then issue the following commands:

'/usr/bin/mysqladmin' -u root password 'new-password'
'/usr/bin/mysqladmin' -u root -h 660fcd1d6820 password 'new-password'

Alternatively you can run:
'/usr/bin/mysql_secure_installation'

which will also give you the option of removing the test
databases and anonymous user created by default.  This is
strongly recommended for production servers.

See the MariaDB Knowledgebase at http://mariadb.com/kb or the
MySQL manual for more instructions.

You can start the MariaDB daemon with:
cd '/usr' ; /usr/bin/mysqld_safe --datadir='/var/lib/mysql'

You can test the MariaDB daemon with mysql-test-run.pl
cd '/usr/mysql-test' ; perl mysql-test-run.pl

Please report any problems at http://mariadb.org/jira

The latest information about MariaDB is available at http://mariadb.org/.
You can find additional information about the MySQL part at:
http://dev.mysql.com
Consider joining MariaDB's strong and vibrant community:
https://mariadb.org/get-involved/

Finished mysql_install_db
181202 16:34:59 mysqld_safe Logging to '/var/lib/mysql/660fcd1d6820.err'.
181202 16:34:59 mysqld_safe Starting mysqld daemon with databases from /var/lib/mysql
Cron is enabled, launching it!
181202 17:35:51 mysqld_safe Logging to '/var/lib/mysql/660fcd1d6820.err'.
181202 17:35:51 mysqld_safe Starting mysqld daemon with databases from /var/lib/mysql
Cron is enabled, launching it!
181202 17:59:51 mysqld_safe Logging to '/var/lib/mysql/660fcd1d6820.err'.
181202 17:59:51 mysqld_safe Starting mysqld daemon with databases from /var/lib/mysql
Cron is enabled, launching it!
181203 10:52:54 mysqld_safe Logging to '/var/lib/mysql/660fcd1d6820.err'.
181203 10:52:54 mysqld_safe Starting mysqld daemon with databases from /var/lib/mysql

gigantischer ()
Ответ на: комментарий от gigantischer

1. ошибки типа

181202 17:35:51 mysqld_safe Logging to '/var/lib/mysql/660fcd1d6820.err'.

почти наверняка говорят о том, что у тебя есть в этой директории битая версия базы. Ее необходимо очистить и запустить компост заново.
2. А почему ты не хочешь запустить инсталяцию как написано в документации у own cloud? Как минимум, различия в базе, они рекомендую mariadb, а не mysql. Их docker-compose точно рабочий, проверил на локалхосте
3. Если что-то не получается опять, обязательно прикладывай ссылки на версию docker-compose.yml и логи контейнеров на какой-нибудь pastebin или аналог, так помогать в решении проблем намного удобнее.

v9lij ★★★★★ ()
Ответ на: комментарий от v9lij

Просто редис у меня не исп-ся вот и не хочу или он здесь выступает как вспомогательный элемент в связке с mysql/mariadb для работы самого ownCloud?

Попробовал закомментарить блок с редис и healthcheck (что за бинарник непонятно, у меня его в репозиториях нет)

version: '2.0'

volumes:
  files:
    driver: local
  mysql:
    driver: local
  backup:
    driver: local

    services:
  owncloud:
    image: owncloud/server:${OWNCLOUD_VERSION}
    restart: always
    ports:
      - ${HTTP_PORT}:8080
    depends_on:
      - db

    environment:
      - OWNCLOUD_DOMAIN=${OWNCLOUD_DOMAIN}
      - OWNCLOUD_DB_TYPE=mysql
      - OWNCLOUD_DB_NAME=owncloud
      - OWNCLOUD_DB_USERNAME=owncloud
      - OWNCLOUD_DB_PASSWORD=owncloud
      - OWNCLOUD_DB_HOST=db
      - OWNCLOUD_ADMIN_USERNAME=${ADMIN_USERNAME}
      - OWNCLOUD_ADMIN_PASSWORD=${ADMIN_PASSWORD}
      - OWNCLOUD_MYSQL_UTF8MB4=true

    volumes:
      - files:/home/owncloud

  db:
    image: mariadb
    restart: always
    environment:
      - MARIADB_ROOT_PASSWORD=owncloud
      - MARIADB_USERNAME=owncloud
      - MARIADB_PASSWORD=owncloud
      - MARIADB_DATABASE=owncloud
      - MARIADB_MAX_ALLOWED_PACKET=128M
      - MARIADB_INNODB_LOG_FILE_SIZE=64M

    volumes:
      - mysql:/var/lib/mysql
      - backup:/var/lib/backup

Теперь рестартится контейнер с mariadb, в логе:

db_1        | 2018-12-04 13:10:09 0 [Note] mysqld (mysqld 10.3.11-MariaDB-1:10.3.11+maria~bionic) starting as process 1 ...
db_1        | 2018-12-04 13:10:09 0 [Note] InnoDB: Using Linux native AIO
db_1        | 2018-12-04 13:10:09 0 [Note] InnoDB: Mutexes and rw_locks use GCC atomic builtins
db_1        | 2018-12-04 13:10:09 0 [Note] InnoDB: Uses event mutexes
db_1        | 2018-12-04 13:10:09 0 [Note] InnoDB: Compressed tables use zlib 1.2.11
db_1        | 2018-12-04 13:10:09 0 [Note] InnoDB: Number of pools: 1
db_1        | 2018-12-04 13:10:09 0 [Note] InnoDB: Using SSE2 crc32 instructions
db_1        | 2018-12-04 13:10:09 0 [Note] InnoDB: Initializing buffer pool, total size = 256M, instances = 1, chunk size = 128M
db_1        | 2018-12-04 13:10:09 0 [Note] InnoDB: Completed initialization of buffer pool
db_1        | 2018-12-04 13:10:09 0 [Note] InnoDB: If the mysqld execution user is authorized, page cleaner thread priority can be changed. See the man page of setpriority().
db_1        | 2018-12-04 13:10:09 0 [ERROR] InnoDB: Invalid flags 0x4800 in ./ibdata1
db_1        | 2018-12-04 13:10:09 0 [ERROR] InnoDB: Plugin initialization aborted with error Data structure corruption
db_1        | 2018-12-04 13:10:10 0 [Note] InnoDB: Starting shutdown...
db_1        | 2018-12-04 13:10:10 0 [ERROR] Plugin 'InnoDB' init function returned error.
db_1        | 2018-12-04 13:10:10 0 [ERROR] Plugin 'InnoDB' registration as a STORAGE ENGINE failed.
db_1        | 2018-12-04 13:10:10 0 [Note] Plugin 'FEEDBACK' is disabled.
db_1        | 2018-12-04 13:10:10 0 [ERROR] Could not open mysql.plugin table. Some plugins may be not loaded
db_1        | 2018-12-04 13:10:10 0 [ERROR] Unknown/unsupported storage engine: InnoDB
db_1        | 2018-12-04 13:10:10 0 [ERROR] Aborting

gigantischer ()
Ответ на: комментарий от gigantischer

owncloud не падает, в логе:

# docker-compose logs owncloud
Attaching to neu_owncloud_1
owncloud_1  | Creating volume folders...
owncloud_1  | Creating hook folders...
owncloud_1  | Waiting for MySQL...
owncloud_1  | wait-for-it: waiting 180 seconds for db:3306
owncloud_1  | wait-for-it: timeout occurred after waiting 180 seconds for db:3306
owncloud_1  | Creating volume folders...
owncloud_1  | Creating hook folders...
owncloud_1  | Waiting for MySQL...
owncloud_1  | wait-for-it: waiting 180 seconds for db:3306

gigantischer ()
Ответ на: комментарий от v9lij

Выполнил все по официальной доке вместе с Redis для docker-compose. Контейнеры все 3 в состоянии Up:

# docker-compose ps
     Name                   Command               State               Ports              
----------------------------------------------------------------------------------------
neu_db_1         /usr/bin/entrypoint /bin/s ...   Up      3306/tcp                       
neu_owncloud_1   /usr/bin/entrypoint /usr/b ...   Up      0.0.0.0:8080->8080/tcp, 8080/tcp 
neu_redis_1      /usr/bin/entrypoint /bin/s ...   Up      6379/tcp   

Но в браузере по http://ip-address:8080 тишина.

В логах:

# docker-compose logs db
Attaching to neu_db_1
db_1        | Cron is enabled, launching it!
db_1        | 181204 17:44:38 mysqld_safe Logging to '/var/lib/mysql/ce452c877ed8.err'.
db_1        | 181204 17:44:38 mysqld_safe Starting mysqld daemon with databases from /var/lib/mysql
db_1        | 181204 17:44:39 mysqld_safe Logging to '/var/lib/mysql/ce452c877ed8.err'.

При этом файл /var/lib/mysql/ce452c877ed8.err отсутствует в системе

# docker-compose logs --follow owncloud 
Attaching to neu_owncloud_1
owncloud_1  | Creating volume folders...
owncloud_1  | Creating hook folders...
owncloud_1  | Waiting for MySQL...
owncloud_1  | wait-for-it: waiting 180 seconds for db:3306
owncloud_1  | wait-for-it: timeout occurred after waiting 180 seconds for db:3306

Похоже, что к mariadb не может подключиться...

gigantischer ()

Мама чому ownClown такий тормоз

Юзаю Radicale для синхронизации контактов и календаря через DAVDroid. Работает, есть не просит. Решил сдуру попробовать сабж. КАК ЖЕ Ж ОНО ТОРМОЗИТ! 200 контактов синхронизируется больше минуты. Календарь с кучей событий - это вообще смерть всему живому. Глобальный, надёжный.

anonymous ()
Ответ на: комментарий от gigantischer

Сейчас у меня ситуация такая: если исп-ть image: library/mysql в описании сервиса db в docker-compose.yml, то при старте контейнеров контейнер owncloud постоянно рестартится. В логе:

# docker-compose logs owncloud
owncloud_1  | Creating volume folders...
owncloud_1  | Creating hook folders...
owncloud_1  | Waiting for MySQL...
owncloud_1  | wait-for-it: waiting 180 seconds for db:3306
owncloud_1  | wait-for-it: db:3306 is available after 0 seconds
owncloud_1  | Waiting for Redis...
owncloud_1  | wait-for-it: waiting 60 seconds for redis:6379
owncloud_1  | wait-for-it: redis:6379 is available after 0 seconds
owncloud_1  | Writing config file...
owncloud_1  | Fixing base perms...
owncloud_1  | Fixing data perms...
owncloud_1  | Fixing hook perms...
owncloud_1  | Installing server database...
owncloud_1  | Error while trying to create admin user: Failed to connect to the database: An exception occured in driver: SQLSTATE[HY000] [1045] Access denied for user 'owncloud'@'172.20.0.4' (using password: YES)
owncloud_1  |  -> 

Но когда я внутри контейнера db завожу юзера 'owncloud'@'172.20.0.4' ситуация не изменяется, все по прежнему рестартится контейнер owncloud все с той же ошибкой:

owncloud_1  | Error while trying to create admin user: Failed to connect to the database: An exception occured in driver: SQLSTATE[HY000] [1045] Access denied for user 'owncloud'@'172.20.0.4' (using password: YES)

gigantischer ()
Ответ на: комментарий от gigantischer

Ты искал файл

/var/lib/mysql/ce452c877ed8.err

у себя в системе чтоль? Этот файл лежит в волюме, волюм в /var/lib/docker/volumes/
Там и надо искать твой волюм, дропать его, запускать раскатку заново и радоваться. Чувак, тебе точно докер нужен? Ты с пустяшной проблемой, которая решается в несколько секунд, сидишь тут уже вечность.
Ты с докером работал до этого?

v9lij ★★★★★ ()
Ответ на: комментарий от v9lij

ну так если проблема пустяшная, ткните куда надо, чтобы быстрее ее разрулить))

gigantischer ()
Ответ на: комментарий от gigantischer

Тебе надо убить все контейнере, что ты раскатал, поудалять волюмы, что ты насоздавал и запустить раскатку заново.
Конкретно сейчас у тебя не запускается база, потому что ты ей подсовываешь волюм с битой базой.

v9lij ★★★★★ ()
Ответ на: комментарий от v9lij

Спасибки, это ближе к теме)) Чтобы удалить все волюмы надо так?

# docker-compose down -v

gigantischer ()
Ответ на: комментарий от v9lij

удалил волюмы и перезапустил

# docker-compose up -d

При этом контейнер owncloud рестартится, в логе:

owncloud_1  | Creating volume folders...
owncloud_1  | Creating hook folders...
owncloud_1  | Waiting for MySQL...
owncloud_1  | wait-for-it: waiting 180 seconds for db:3306
owncloud_1  | wait-for-it: db:3306 is available after 0 seconds
owncloud_1  | Waiting for Redis...
owncloud_1  | wait-for-it: waiting 60 seconds for redis:6379
owncloud_1  | wait-for-it: redis:6379 is available after 0 seconds
owncloud_1  | Writing config file...
owncloud_1  | Fixing base perms...
owncloud_1  | Fixing data perms...
owncloud_1  | Fixing hook perms...
owncloud_1  | Installing server database...
owncloud_1  | Error while trying to create admin user: Failed to connect to the database: An exception occured in driver: SQLSTATE[HY000] [1045] Access denied for user 'owncloud'@'172.20.0.4' (using password: YES)
owncloud_1  |  -> 

Теперь надо ручками создавать юзера 'owncloud'@'172.20.0.4' внутри контейнера db или он должен был автоматически создаться, т.к. прописан в docker-compose.yml?

gigantischer ()
Ответ на: комментарий от gigantischer

Создал ручками юзера 'owncloud'@'172.20.0.4' внутри контейнера db, ошибка mysql исчезла...

gigantischer ()
Ответ на: комментарий от v9lij

Спасибки, убил все ненужные контейнеры, волюмы и перезапустил раскатку заново, теперь все 3 контейнера в состоянии UP. Только в браузере по http://внешний_ip:8080 тишина...

При этом в файле .env указан:

HTTP_PORT=8080

А в docker-compose.yml:

   ports:
      - ${HTTP_PORT}:80
.......................

Вроде всё верно, но в браузере тишина...

gigantischer ()
Ответ на: комментарий от v9lij

нет, с docker-compose из репозиториев в Ubuntu:

ii  docker-compose                        1.8.0-2~16.04.1                            all          Punctual, lightweight development environments using Docker

gigantischer ()

HTTPS_PORT=80443

А чо не 8080443443?

anonymous ()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.