Docker deployment error: root - how to fix? - docker

(I'm like a beginner to Docker/Linux/etc.). Trying to get Heimdall working, but getting the error:
deployment error failed to deploy a stack: root additional property Heimdall is not allowed
This is the stack I'm trying to deploy:
heimdall:
image: ghcr.io/linuxserver/heimdall
container_name: heimdall
environment:
- PUID=1000
- PGID=1000
- TZ=Netherlands/Amsterdam
volumes:
- /home/me/docker/heimdall/config:/config
ports:
- 11080:80
- 11443:443
restart: always
Also added the "docker" user to my username group.
Hope someone can give me some insight about this.
Kind regads.

Related

Docker + nginx-proxy error 502. what's wrong with my compose file?

I'm trying to run an application behind jwilder/nginx-proxy. I have other websites up and working with nginx-proxy, but i'm having issues with this one:
If i ran it with the application up i got a 502 error
If i stop the application I got (logically) a 503 error.
This is my YAML. What i'm doing wrong?
NOTE: if i uncomment the ports section it works locally.
services:
app:
image: monica
depends_on:
- db
# ports:
# - 8081:80
expose:
- 80
environment:
- VIRTUAL_HOST=pepe.domain.com
- VIRTUAL_PORT=80
- APP_KEY=xxxxxxx
- DB_HOST=db
- DB_USERNAME=monica
- DB_PASSWORD=xxxxx
volumes:
- data-monica:/var/www/html/storage
restart: always
db:
image: mysql
environment:
- MYSQL_RANDOM_ROOT_PASSWORD=true
- MYSQL_DATABASE=xxxx
- MYSQL_USER=xxxxx
- MYSQL_PASSWORD=xxxx
volumes:
- mysql-monica:/var/lib/mysql
restart: always
volumes:
data-monica:
name: data-monica
mysql-monica:
name: mysql-monica

nextcloud can't create an admin user

error while trying to create the admin user:
Error while trying to create admin user: Failed to connect to the database: An exception occurred in the driver: SQLSTATE[HY000] [1045] Access denied for user 'nextcloud'#'172.22.0.6' (using password: YES)
docker-compose.yml
version: '3'
volumes:
nextcloud-data:
nextcloud-db:
networks:
nginx_network:
external: true
services:
app:
image: nextcloud
restart: always
volumes:
- nextcloud-data:/var/www/html
environment:
- MYSQL_PASSWORD=test
- MYSQL_DATABASE=nextcloud
- MYSQL_USER=nextcloud
- MYSQL_HOST=db
networks:
- nginx_network
db:
image: mariadb
restart: always
command: --transaction-isolation=READ-COMMITTED --binlog-format=ROW
volumes:
- nextcloud-db:/var/lib/mysql
environment:
- MYSQL_ROOT_PASSWORD=test
- MYSQL_PASSWORD=test
- MYSQL_DATABASE=nextcloud
- MYSQL_USER=nextcloud
networks:
- nginx_network
I couldn't find any similar problems with a solution that works for me and the docker compose seems okay to me
Solution that worked for me:
changed database container's name
deleted all the volumes
DO NOT SET THE USER AS ROOT normal user is enough
(also this error shows up if you mistype your credentials between containers)

Issue with Collabora CODE, Nextcloud & Nginx using docker-compose

I am trying to get a docker-compose.yaml together to run Nextcloud and Collabora CODE via Nginx Proxy Manager.
So far I have Nginx and Nextcloud working really nicely with persistent volumes so that my configs survive kill & rm. My issue is that I cannot get my Collabora CODE instance to link to Nextcloud. There are multiple bits that I might have got wrong so I'll dump as much info as I can here.
I have the following subdomains all pointing at my server:
collabora.domain.tld nextcloud.domain.tld nginx.domain.tld
... and set up as proxy hosts:
As I mentioned, the Nginx and Nextcloud setups are great. When I point my browser at collabora.domain.tld I see the OK message. I can also access the admin page at collabora.domain.tld/loleaflet/dist/admin/admin.html
The NPM entry for collabora.domain.tld is below:
My docker-compose.yaml has gone through several iterations in an attempt to get this working, but my current attempt is below:
version: '3'
volumes:
nextcloud-data:
nextcloud-db:
npm-data:
npm-ssl:
npm-db:
networks:
frontend:
backend:
services:
code:
image: collabora/code:latest
restart: always
environment:
- password=${COLLABORA_PASSWORD:?Not defined!}
- username=${COLLABORA_USERNAME:?Not defined!}
- domain=${COLLABORA_DOMAIN:?Not defined!}
expose:
- "9980"
networks:
- frontend
- backend
nextcloud-app:
image: nextcloud:stable
restart: always
volumes:
- nextcloud-data:/var/www/html
environment:
- MYSQL_PASSWORD=${NC_MYSQL_PASSWORD:?Not defined!}
- MYSQL_DATABASE=nextcloud
- MYSQL_USER=nextcloud-user
- MYSQL_HOST=nextcloud-db
networks:
- frontend
- backend
nextcloud-db:
image: mariadb
restart: always
command: --transaction-isolation=READ-COMMITTED --binlog-format=ROW --innodb-file-per-table=1 --skip-innodb-read-only-compressed
volumes:
- nextcloud-db:/var/lib/mysql
environment:
- MYSQL_ROOT_PASSWORD=${NC_MYSQL_ROOT_PASSWORD:?Not defined!}
- MYSQL_PASSWORD=${NC_MYSQL_PASSWORD:?Not defined!}
- MYSQL_DATABASE=nextcloud
- MYSQL_USER=nextcloud-user
networks:
- backend
npm-app:
image: jc21/nginx-proxy-manager:latest
restart: always
ports:
- "80:80"
- "81:81"
- "443:443"
environment:
- DB_MYSQL_HOST=npm-db
- DB_MYSQL_PORT=3306
- DB_MYSQL_USER=npm-user
- DB_MYSQL_PASSWORD=${NPM_MYSQL_PASSWORD:?Not defined!}
- DB_MYSQL_NAME=npm
volumes:
- npm-data:/data
- npm-ssl:/etc/letsencrypt
networks:
- frontend
- backend
npm-db:
image: jc21/mariadb-aria:latest
restart: always
environment:
- MYSQL_ROOT_PASSWORD=${NPM_MYSQL_ROOT_PASSWORD:?Not defined!}
- MYSQL_DATABASE=npm
- MYSQL_USER=npm-user
- MYSQL_PASSWORD=${NPM_MYSQL_PASSWORD:?Not defined!}
volumes:
- npm-db:/var/lib/mysql
networks:
- backend
$COLLABORA_DOMAIN is set to nextcloud.domain.tld.
Any ideas what I have done wrong, and how to get my Nextcloud connected to CODE?
What do your custom locations look like? See, e.g. https://www.collaboraoffice.com/code/nginx-reverse-proxy/
I have a very similar setup, except the collabora instance is not in docker compose, as that never worked for me.
Make sure you have specified your domain environmental variable correctly (dot escaping etc.)

Nextcloud in docker Exit Code 127

I want to start nextcloud and mariadb on docker with a compose file. If I use the following line, there's an error:
command: –-transaction-isolation=READ-COMMITTED --binlog-format=ROW
db_nextcloud exited with code 127
If I don't use this parameters, it works, but I think, this parameters are necessary?
Here the compose file:
version: "3"
services:
db_nextcloud:
container_name: db_nextcloud
image: linuxserver/mariadb:arm32v7-latest
restart: always
command: –-transaction-isolation=READ-COMMITTED --binlog-format=ROW
volumes:
- /var/lib/docker/volumes/mariadbnextcloud2:/var/lib/mysql
environment:
- MYSQL_ROOT_PASSWORD=xxx
- MYSQL_PASSWORD=xxx
- MYSQL_DATABASE=nextcloud
- MYSQL_USER=nextcloud
nextcloud:
container_name: nextcloud
image: nextcloud
restart: always
depends_on:
- db_nextcloud
ports:
- 8080:80
links:
- db_nextcloud
volumes:
- /var/lib/docker/volumes/nextcloud2:/var/www/html
environment:
- MYSQL_PASSWORD=q&zxTmQf
- MYSQL_DATABASE=nextcloud
- MYSQL_USER=nextcloud
- MYSQL_HOST=mariadbnextcloud
Are you sure that linuxserver's Dockerfile allows passing command line options for the mariadb-daemon? As far as I can see on a quick review those arguments are passed to the /init binary but not actively forwarded to the mariadbd. The original mariadb Dockerfile provides an ENTRYPOINT where you can easily pass parameters like this. All matches I could find with –-transaction-isolation=READ-COMMITTED --binlog-format=ROW are based on the original mariadb-image.
Additionally, the exit code 127 is used by bash to indicate a file-not-found error - but could also come from /init to indicate something completely different.

I am using `eureka docker container` but it is giving faults

I am using eureka container but unfortunately it is not working properly.
Docker-compose.yaml
configserver:
image: 1.2.3.4:1234/configserver
container_name: configserver
ports:
- 8888:8888
volumes:
- /tmp/logs:/tmp/logs
env_file:
- ./docker.env
eureka:
container_name: eureka
ports:
- 8761:8080
volumes:
- /tmp/logs:/tmp/logs
env_file:
- ./docker.env
image: netflixoss/eureka:1.3.1
restart: always
depends_on:
- configserver
Logs of Container-
WARN com.netflix.discovery.DiscoveryClient:1570 [localhost-startStop-1]
[makeRemoteCall] Can't get a response from localhost:8080/eureka/v2/apps
ERROR com.netflix.discovery.DiscoveryClient:1432 [localhost-startStop-1] [makeRemoteCall] Can't contact any eureka nodes - possibly a security group issue?
ERROR com.netflix.discovery.DiscoveryClient:1033 [localhost-startStop-1] [fetchRegistry] DiscoveryClient_EUREKA/4ae83dcdde1a - was unable to refresh its cache! status = java.net.SocketTimeoutException: Read timed out
I used different image. Instead of netflixoss/eureka:1.3.1 I use eureka. It works for me.

Resources