Reputation: 1903
version: '3'
services:
redis:
image: redis
container_name: redis
restart: always
volumes:
- //projects/spring-data-redis-example/src/main/resources/docker/redis/storage:/opt/redis/data/bases
- //projects/spring-data-redis-example/src/main/resources/docker/redis/conf/redis.conf:/usr/local/etc/redis/redis.conf
- //projects/spring-data-redis-example/src/main/resources/docker/redis/log/redis-server.log:/opt/redis/logs/redis-server.log
ports:
- 6379:6379
phpredisadmin:
image: erikdubbelboer/phpredisadmin
container_name: redis-manager
environment:
ADMIN_USER: admin
ADMIN_PASS: admin
REDIS_1_HOST: 192.168.99.100
REDIS_1_PORT: 6379
links:
- redis
ports:
- "8085:80"
command: --loglevel verbose
The first part of the file is performed (the creating redis-container), but I cannot make the creation a container for web phpRedisAdmin.
I can make only so:
docker run --rm -it -e REDIS_1_HOST=192.168.99.100 -e REDIS_1_NAME=redis -p 8085:80 erikdubbelboer/phpredisadmin
It's work.
I tried to do this as shown in this link, Example usage with docker-compose for creating docker-compose.yml That to make phpRedisAdmin.
I used "depends_on":
version: '3'
services:
redis:
image: redis
....
phpredisadmin:
image: erikdubbelboer/phpredisadmin
container_name: redis-manager
depends_on:
- redis
environment:
#ADMIN_USER: admin
#ADMIN_PASS: admin
REDIS_1_HOST: 192.168.99.100
REDIS_1_PORT: 6379
links:
- redis
ports:
- "8085:80"
command: --loglevel verbose
But a container with redis-manager doesn't start.
Update_3
$ docker-compose up
WARNING: Found orphan containers (mongo, mongo-manager) for this project. If you removed or renamed this service in your compose file, you can run this command with
the --remove-orphans flag to clean it up.
Creating redis ... done
Creating redis-manager ... done
Attaching to redis, redis-manager
redis | 1:C 15 Aug 2020 18:17:30.323 # oO0OoO0OoO0Oo Redis is starting oO0OoO0OoO0Oo
redis | 1:C 15 Aug 2020 18:17:30.323 # Redis version=6.0.6, bits=64, commit=00000000, modified=0, pid=1, just started
redis | 1:C 15 Aug 2020 18:17:30.323 # Warning: no config file specified, using the default config. In order to specify a config file use redis-server /pa
th/to/redis.conf
redis-manager | Usage: php [options] [-f] <file> [--] [args...]
redis-manager | php [options] -r <code> [--] [args...]
redis-manager | php [options] [-B <begin_code>] -R <code> [-E <end_code>] [--] [args...]
redis-manager | php [options] [-B <begin_code>] -F <file> [-E <end_code>] [--] [args...]
redis-manager | php [options] -S <addr>:<port> [-t docroot] [router]
redis-manager | php [options] -- [args...]
redis-manager | php [options] -a
redis-manager |
redis-manager | -a Run as interactive shell
redis-manager | -c <path>|<file> Look for php.ini file in this directory
redis-manager | -n No configuration (ini) files will be used
redis-manager | -d foo[=bar] Define INI entry foo with value 'bar'
redis-manager | -e Generate extended information for debugger/profiler
redis-manager | -f <file> Parse and execute <file>.
redis-manager | -h This help
redis-manager | -i PHP information
redis-manager | -l Syntax check only (lint)
redis-manager | -m Show compiled in modules
redis-manager | -r <code> Run PHP <code> without using script tags <?..?>
redis-manager | -B <begin_code> Run PHP <begin_code> before processing input lines
redis-manager | -R <code> Run PHP <code> for every input line
redis-manager | -F <file> Parse and execute <file> for every input line
redis-manager | -E <end_code> Run PHP <end_code> after processing all input lines
redis-manager | -H Hide any passed arguments from external tools.
redis-manager | -S <addr>:<port> Run with built-in web server.
redis-manager | -t <docroot> Specify document root <docroot> for built-in web server.
redis-manager | -s Output HTML syntax highlighted source.
redis-manager | -v Version number
redis-manager | -w Output source with stripped comments and whitespace.
redis-manager | -z <file> Load Zend extension <file>.
redis-manager |
redis-manager | args... Arguments passed to script. Use -- args when first argument
redis-manager | starts with - or script is read from stdin
redis-manager |
redis-manager | --ini Show configuration file names
redis-manager |
redis-manager | --rf <name> Show information about function <name>.
redis-manager | --rc <name> Show information about class <name>.
redis-manager | --re <name> Show information about extension <name>.
redis-manager | --rz <name> Show information about Zend extension <name>.
redis-manager | --ri <name> Show configuration for extension <name>.
redis-manager |
redis-manager exited with code 0
Update_3
This configuration file is correct.
docker-compose.yml
version: '3'
services:
redis:
image: redis
container_name: redis
restart: always
volumes:
- //projects/spring-data-redis-example/src/main/resources/docker/redis/storage:/opt/redis/data/bases
- //projects/spring-data-redis-example/src/main/resources/docker/redis/conf/redis.conf:/usr/local/etc/redis/redis.conf
- //projects/spring-data-redis-example/src/main/resources/docker/redis/log/redis-server.log:/opt/redis/logs/redis-server.log
ports:
- 6379:6379
phpredisadmin:
image: erikdubbelboer/phpredisadmin
container_name: redis-manager
depends_on:
- redis
environment:
REDIS_1_HOST: 192.168.99.100
REDIS_1_PORT: 6379
links:
- redis
ports:
- "8085:80"
Please, someone tell me how to fix the docker-compose.yml I created and to explain me what was done wrong.
Upvotes: 1
Views: 952
Reputation: 18203
Add depends_on
to the phptredisadmin
section:
phpredisadmin:
image: erikdubbelboer/phpredisadmin
container_name: redis-manager
depends_on:
- redis
environment:
#ADMIN_USER: admin
#ADMIN_PASS: admin
REDIS_1_HOST: 192.168.99.100
REDIS_1_PORT: 6379
links:
- redis
ports:
- "8085:80"
command: --loglevel verbose
More info here: https://docs.docker.com/compose/compose-file/#depends_on.
Upvotes: 1