J'exécute une application appelée ERDDAP en utilisant ce conteneur Docker exécuté ainsi :
docker stop erddap
docker rm erddap
docker run -p 8090:8080 -p 8543:8443 -d -v /usr/local/erddap/tomcat-users.xml:/opt/tomcat/conf/tomcat-users.xml -v /usr/local/erddap:/opt/tomcat/content/erddap -v /usr/local/erddapData:/erddapData --name erddap axiom/docker-erddap
Cette application lit un datasets.xml
fichier censé être généré par une application appelée GenerateDatasetsXml
qui se trouve à l'intérieur du conteneur :
http://coastwatch.pfeg.noaa.gov/erddap/download/setupDatasetsXml.html#GenerateDatasetsXml
Alors, comment puis-je exécuter ce programme qui se trouve dans le conteneur Docker pour générer mon datasets.xml
fichier ?
Réponse acceptée :
Pour exécuter des commandes shell dans votre conteneur Docker, exécutez :
$ docker exec -it erddap bash
Cela vous amènera dans le conteneur docker à /opt/tomcat. Votre invite de commande ressemblera à ceci
[email protected]:/opt/tomcat#
Vérifiez d'abord que votre dossier erddapData se trouve dans /erddapData, puis exécutez :
cd /opt/tomcat/webapps/erddap/WEB-INF/
bash GenerateDatasetsXml.sh
Cela lancera le script GenerateDatasetsXml. Une fois que vous avez répondu à toutes les questions, vous pouvez sortir du conteneur en utilisant :
exit
La sortie de ce script se trouve dans votre répertoire erddapData local :
$ cd /usr/local/erddapData/logs/
$ cat GenerateDatasetsXml.out
Vous pouvez copier la sortie à l'endroit où vous en avez besoin dans votre document datasets.xml, que vous devez enregistrer dans /usr/local/erddap/