i follow instruction of install metasfresh based on container. https://docs.metasfresh.org/installation_collection/EN/How_do_I_setup_the_metasfresh_stack_using_Docker.html
I write my local host to access : 192.18.72.142
and the page doesn’t upload and i can’t access to metasfresh.
what i do
Hi @Aman_Slamaa
In order to debug your issue, it’s best you provide more infos:
a) what is the ip address of your docker-host which shall be reachable from your client PC where you run your browser
b) what is the output of docker ps?
c) can you post the contents of your docker-compose.yml?
Please note when posting output/configs here in the forum, it’s best to use a code-block
indent preformatted text by 4 spaces
This is necessary to check if your indentation in your docker-compose.yml is fine.
Cheers,
Julian.
Hi julian
it is my first time i install docker and metasfesh
a) i open web browser on same machine that i insatll metasfresh on it.
i write dockerhost: 172.17.0.1
b) the output of docker ps is:
c) the content of docker-compose.yml is:
> db:
> build: db
> restart: always
> volumes:
> - ./volumes/db/data:/var/lib/postgresql/data
> - ./volumes/db/log:/var/log/postgresql
> - /etc/localtime:/etc/localtime:ro
> - /etc/timezone:/etc/timezone:ro
> environment:
> - METASFRESH_USERNAME=metasfresh
> - METASFRESH_PASSWORD=metasfresh
> - METASFRESH_DBNAME=metasfresh
> - DB_SYSPASS=System
> - POSTGRES_PASSWORD=ip2LmNzXX8p8iXg9lZTWEJ9524kQDbXFudB7LR03T-xK9fLweX3TLMkA2AYcEiaS
> app:
> build: app
> hostname: app
> links:
> - db:db
> - rabbitmq:rabbitmq
> - search:search
> expose:
> - “8282”
> - “61616”
> - “8788”
> restart: always
> volumes:
> - ./volumes/app/log:/opt/metasfresh/log:rw
> - ./volumes/app/heapdump:/opt/metasfresh/heapdump:rw
> - /etc/localtime:/etc/localtime:ro
> - /etc/timezone:/etc/timezone:ro
> environment:
> - METASFRESH_HOME=/opt/metasfresh
> webapi:
> build: webapi
> links:
> - app:app
> - db:db
> - rabbitmq:rabbitmq
> - search:search
> expose:
> - “8789”
> # to access the webui-api directly
> # (eg. for debugging or connecting your app to the metasfresh api)
> # uncomment following port:
> #ports:
> #- “8080:8080”
> restart: always
> volumes:
> - ./volumes/webapi/log:/opt/metasfresh-webui-api/log:rw
> - ./volumes/webapi/heapdump:/opt/metasfresh-webui-api/heapdump:rw
> - /etc/localtime:/etc/localtime:ro
> - /etc/timezone:/etc/timezone:ro
> webui:
> build: webui
> links:
> - webapi:webapi
> ports:
> - “80:80”
> - “443:443”
> restart: always
> volumes:
> - /etc/localtime:/etc/localtime:ro
> - /etc/timezone:/etc/timezone:ro
> #uncomment and set to URL where metasfresh will be available from browsers
> #environment:
> #- WEBAPI_URL=http://192.168.72.142:8080
> rabbitmq:
> build: rabbitmq
> expose:
> - “5672”
> restart: always
> volumes:
> - ./volumes/rabbitmq/log:/var/log/rabbitmq/log
> - /etc/localtime:/etc/localtime:ro
> - /etc/timezone:/etc/timezone:ro
> environment:
> RABBITMQ_DEFAULT_USER: “metasfresh”
> RABBITMQ_DEFAULT_PASS: “metasfresh”
> RABBITMQ_DEFAULT_VHOST: “/”
> search:
> build: search
> ulimits:
> memlock:
> soft: -1
> hard: -1
> nofile:
> soft: 65536
> hard: 65536
> cap_add:
> - IPC_LOCK
> # to access the search api directly
> # (e.g. if you did docker-compose up search to have the deachboard with your locally running metasfresh services)
> # uncomment following ports:
> # ports:
> # - “9200:9200”
> # - “9300:9300”
> volumes:
> - ./volumes/search/data:/usr/share/elasticsearch/data
> - /etc/localtime:/etc/localtime:ro
> - /etc/timezone:/etc/timezone:ro
> environment:
> - “ES_JAVA_OPTS=-Xms128M -Xmx256m”
> restart: always
Hi Julian, a newbie here. Same problem. I’m running Docker Desktop WSL.
-
I followed these instructions (https://medium.com/@callback.insanity/using-docker-with-windows-subsystem-for-linux-wsl-on-windows-10-d2deacad491f)
-
and your doc (How to set up the metasfresh stack using Docker?).
-
Only changed at docker-compose.yml
environment: - WEBAPI_URL=http://localhost:80 -
On Docker, everything seems working fine:
but I just get this on the browser:
<!doctype html>
<html>
<head>
<meta charset="utf-8">
<meta http-equiv="X-UA-Compatible" content="IE=edge">
<meta content="width=device-width, initial-scale=1, maximum-scale=1, user-scalable=no" name="viewport">
<meta name="mobile-web-app-capable" content="yes">
<link rel="icon" type="image/png" href="[/favicon.png](http://localhost/favicon.png)">
<title>Metasfresh</title>
</head>
<body>
<div id="root"></div>
<script src="[/config.js](http://localhost/config.js)"></script>
<script type="text/javascript" src="[/bundle-2240a5322580a3d9d144-git-23515c5.js](http://localhost/bundle-2240a5322580a3d9d144-git-23515c5.js)"></script></body>
</html>
Any solution? thanks
Hi @xxkk
Can you post your docker-compose.yml file in here (you may want to redact some internal sensitive information like hostname or IPs).
Most of these issues are due to wrong docker-compose.yml settings.
Cheers
Here it’s my docker-compose.yml:
db:
build: db
restart: always
volumes:
- ./volumes/db/data:/var/lib/postgresql/data
- ./volumes/db/log:/var/log/postgresql
- /etc/localtime:/etc/localtime:ro
- /etc/timezone:/etc/timezone:ro
environment:
- METASFRESH_USERNAME=metasfresh
- METASFRESH_PASSWORD=metasfresh
- METASFRESH_DBNAME=metasfresh
- DB_SYSPASS=System
- POSTGRES_PASSWORD=ip2LmNzXX8p8iXg9lZTWEJ9524kQDbXFudB7LR03T-xK9fLweX3TLMkA2AYcEiaS
app:
build: app
hostname: app
links:
- db:db
- rabbitmq:rabbitmq
- search:search
expose:
- "8282"
- "61616"
- "8788"
restart: always
volumes:
- ./volumes/app/log:/opt/metasfresh/log:rw
- ./volumes/app/heapdump:/opt/metasfresh/heapdump:rw
- /etc/localtime:/etc/localtime:ro
- /etc/timezone:/etc/timezone:ro
environment:
- METASFRESH_HOME=/opt/metasfresh
webapi:
build: webapi
links:
- app:app
- db:db
- rabbitmq:rabbitmq
- search:search
expose:
- "8789"
# to access the webui-api directly
# (eg. for debugging or connecting your app to the metasfresh api)
# uncomment following port:
#ports:
#- "8080:8080"
restart: always
volumes:
- ./volumes/webapi/log:/opt/metasfresh-webui-api/log:rw
- ./volumes/webapi/heapdump:/opt/metasfresh-webui-api/heapdump:rw
- /etc/localtime:/etc/localtime:ro
- /etc/timezone:/etc/timezone:ro
webui:
build: webui
links:
- webapi:webapi
ports:
- "80:80"
- "443:443"
restart: always
volumes:
- /etc/localtime:/etc/localtime:ro
- /etc/timezone:/etc/timezone:ro
#uncomment and set to URL where metasfresh will be available from browsers
environment:
- WEBAPI_URL=http://localhost:8080
rabbitmq:
build: rabbitmq
expose:
- "5672"
restart: always
volumes:
- ./volumes/rabbitmq/log:/var/log/rabbitmq/log
- /etc/localtime:/etc/localtime:ro
- /etc/timezone:/etc/timezone:ro
environment:
RABBITMQ_DEFAULT_USER: "metasfresh"
RABBITMQ_DEFAULT_PASS: "metasfresh"
RABBITMQ_DEFAULT_VHOST: "/"
search:
build: search
ulimits:
memlock:
soft: -1
hard: -1
nofile:
soft: 65536
hard: 65536
cap_add:
- IPC_LOCK
# to access the search api directly
# (e.g. if you did docker-compose up search to have the deachboard with your locally running metasfresh services)
# uncomment following ports:
# ports:
# - "9200:9200"
# - "9300:9300"
volumes:
- ./volumes/search/data:/usr/share/elasticsearch/data
- /etc/localtime:/etc/localtime:ro
- /etc/timezone:/etc/timezone:ro
environment:
- "ES_JAVA_OPTS=-Xms128M -Xmx256m"
restart: always
Hi @xxkk
It looks like you set WEBAPI_URL to http://localhost:8080 but on the other hand you set webui host-bound ports to 80 and 443.
The variable-name of WEBAPI_URL is unfortunately somewhat misleading and although this is used to tell your browser where your API is accessible, the request itself is usually handled by the webui container.
You need to set WEBAPI_URL to the URL where metasfresh (webui-port) will be available from browsers - see the example docker-compose.yml in here: https://docs.metasfresh.org/installation_collection/EN/How_do_I_setup_the_metasfresh_stack_using_Docker.html
In order to solve your issue, you have two possibilities:
- Change
WEBAPI_URLtohttp://localhost(assuming you want to access metasfresh via browser using http://localhost in the URL bar if your browser is running on the same machine as the metasfresh-stack
Note: on Windows you might run into permission issues when trying to run a service onlocalhost80/TCP
OR
- Change the
portpart in yourwebuisection to use port8080on your host and leaveWEBAPI_URLas it is right now:
...
webui:
...
ports:
- "8080:80"
...
environment:
- WEBAPI_URL=http://localhost:8080
After that, just restart your docker-compose project. After everything has booted up (might take a few minutes, depending on your hardware) you should be able to access metasfresh using your browser:
Solution 1: http://localhost
Solution 2: http://localhost:8080

