1994 1995 1996 1997 1998 1999 2000 2001 2002 2003 2004 2005 2006 2007 2008 2009 2010 2011 2012 2013 2014 2015 2016 2017 2018 2019 2020 2021 2022 2023 <2024> 2025 | Index | 1994 1995 1996 1997 1998 1999 2000 2001 2002 2003 2004 2005 2006 2007 2008 2009 2010 2011 2012 2013 2014 2015 2016 2017 2018 2019 2020 2021 2022 2023 <2024> 2025 |
<== Date ==> | <== Thread ==> |
---|
Subject: | Re: How can I get a PV from an external server from inside a docker container? |
From: | Carsten Winkler via Tech-talk <tech-talk at aps.anl.gov> |
To: | "tech-talk at aps.anl.gov" <tech-talk at aps.anl.gov> |
Date: | Tue, 26 Mar 2024 09:59:08 +0100 |
Hello Dale, hello Florian,
many thanks for your helpful advises. Now I could solve the issue simply by adding "network_mode: host" to the service "epicsbase".
Now my working docker-compose.yml looks like:
services:
epicsbase:
image: softioc
container_name: epicsbase
volumes:
- ./epicsbase/db:/usr/local/db
working_dir: /usr/local/epics
command:
- /bin/sh
- -c
- |
echo start first Soft IOC
screen -d -m /usr/local/epics/epics-base/bin/linux-x86_64/softIoc -D /usr/local/epics/epics-base/dbd/softIoc.dbd -d /usr/local/db/test.db
tail -f /dev/null # keep alive
network_mode: host
Best regards
Carsten
--------------------Ursprüngliche Nachricht--------------------
Von: Carsten Winkler <carsten.winkler at helmholtz-berlin.de>
Gesendet: Montag 25. März 2024 14:55
An: tech-talk at aps.anl.gov
Betreff: How can I get a PV from an external server from inside a docker container?
Hello,
I have 3 SoftIOCs.
1.) local host = 193.100.100.100 with PV: "local_pv"
2.) external host = 192.200.200.200 with PV: "external_pv"
3.) docker container on local host with PV: "docker_pv"From local host I can read all PVs (caget local_pv external_pv docker_pv). 👍
From inside the docker container I can read the local_pv and the docker_pv
but not the external_pv. 🤔Here is my docker compose configuration:
services:
epicsbase:
image: softioc
container_name: epicsbase
volumes:
- ./epicsbase/db:/usr/local/db
working_dir: /usr/local/epics
command:
- /bin/sh
- -c
- |
echo start first Soft IOC
screen -d -m /usr/local/epics/epics-base/bin/linux-x86_64/softIoc -D /usr/local/epics/epics-base/dbd/softIoc.dbd -d /usr/local/db/test.db
tail -f /dev/null # keep alive
networks:
- ioc-net
networks:
ioc-net:From inside the docker container I have also already tried EPICS_CA_AUTO_ADDR_LIST / EPICS_CA_ADDR_LIST. Unfortunately without success.
With and without these environment variables I only get the local_pv and the docker_pv.How can I also read the external_pv from inside the docker container?
Best regards
Carsten