Forum Discussion
AST Configuration Assistance
All, I had AST configured on a RHEL platform and the 3000 port as web available.
Something changed in our environment and I had to wipe away the docker configuration and I am starting from scratch on the same RHEL instance.
Docker is working as "sudo docker run hello-world" states "This message shows that your installation appears to be working correctly."
I deleted the old application-study-tool and added the folder from the tarball to my home directory.
I copied and edited the below :
cp .env-example .env
cp .env.device-secrets-example .env.device-secrets
vi ./config/ast_defaults.yaml
vi ./config/bigip_receivers.yaml
That all took like before the first installation.
When I run this " docker run --rm -it -w /app -v ${PWD}:/app --entrypoint /app/src/bin/init_entrypoint.sh python:3.12.6-slim-bookworm --generate-config "...I get the error :
"docker: Error response from daemon: failed to create task for container: failed to create shim task: OCI runtime create failed: runc create failed: unable to start container process: error during container init: exec: "/app/src/bin/init_entrypoint.sh": stat /app/src/bin/init_entrypoint.sh: no such file or directory: unknown"
That is where I am stuck.
Python version is python3.11
Wanted to reach out here first before I potentially tried it on another RHEL box - clean install.
Any help or direction would be appreciated.
15 Replies
- JasonEpstein
Employee
You're close. It looks like you just need "sudo" before "docker compose up", and you should get past the permissions issue.
So:sudo docker compose upAlso, there shouldn't be a quote (") after the previous docker command, but it looks like you have it working.
- Mikesisav
Altostratus
Can't seem to see the threaded Forrest through the threaded trees here. Only one cup of coffee. Will update after doing some more testing. Thank you.
- Mikesisav
Altostratus
Jason,
Happy New Year.
I was able to run "chmod -R o+r ." and then successfully, which seems to move then next command forward from last year's work "
sudo docker run --rm -it -w /app -v ${PWD}:/app --entrypoint /app/src/bin/init_entrypoint.sh python:3.12.6-slim-bookworm --generate-config". The last lines for that last command are "
2026-01-07 22:37:39,991 - INFO - Successfully wrote data to './services/otel_collector/pipelines.yaml'.
2026-01-07 22:37:39,997 - INFO - Successfully wrote data to './services/otel_collector/receivers.yaml'."
I then tried to run "docker compose up" next and get this "
unable to get image 'grafana/grafana@sha256:6128afd8174f01e39a78341cb457588f723bbb9c3b25c4d43c4b775881767069': permission denied while trying to connect to the Docker daemon socket at unix:///var/run/docker.sock: Get "http://%2Fvar%2Frun%2Fdocker.sock/v1.51/images/grafana/grafana@sha256:6128afd8174f01e39a78341cb457588f723bbb9c3b25c4d43c4b775881767069/json": dial unix /var/run/docker.sock: connect: permission denied"
This still reads like a permission issue, potentially?
Thank you for your time and efforts.
- JasonEpstein
Employee
Another thing I realized today when working with another customer with a similar permissions issue: if you want to work with your existing clone of the repo, you will also need to enable executable permissions for user, "other", on all directories. This is also required for access to these files.
From the application-study-tool/ directory, run "chmod -R o+X services" (you might need "sudo" before this command as well). Note the capital "X", which will only change the permissions of the directories -- not the files.
- Mikesisav
Altostratus
I missed this entry as I had to hit a hyperlink. Not sure why it just did not thread it lower. Whatever. I will try this today instead of "chmod -R o+r ." from yesterday as I just saw it and report back. Thanks, again, Jason.
- JasonEpstein
Employee
You have a few choices now. With the new umask value, you can re-clone the repo and start over, or you can make everything readable for "other" within the existing repo you have. If you decide to do the latter, the command, "chmod -R o+r .", will do that. (You might need "sudo" before it if your existing user account doesn't have sufficient permissions to change these files.)
On a separate note, I now see that the "ls -l otel-collector-config/defaults/" command you were running should have been "ls -l services/otel_collector/defaults/". That should work better for listing the files in this directory.
- Mikesisav
Altostratus
Edited to reflect umask 0022 :
[user@f05astpl001 application-study-tool]$ umask
0022Ran sudo docker compose up and still having issues with /etc permissions.
Also : [user@f05astpl001 application-study-tool]$ ls -l otel-collector-config/defaults/
ls: cannot access 'otel-collector-config/defaults/': No such file or directoryexample : Error: failed to get config: cannot resolve the configuration: cannot retrieve the configuration: unable to read the file file:/etc/otel-collector-config/defaults/bigip-scraper-config.yaml: open /etc/otel-collector-config/defaults/bigip-scraper-config.yaml: permission denied
otel-collector-1 | 2025/12/01 16:51:52 collector server run finished with error: failed to get config: cannot resolve the configuration: cannot retrieve the configuration: unable to read the file file:/etc/otel-collector-config/defaults/bigip-scraper-config.yaml: open /etc/otel-collector-config/defaults/bigip-scraper-config.yaml: permission deniedThanks for your help with this.
Any idea what I can do next..perhaps this next option?
If you don't, or would prefer to preserve the configuration you've already done, you'll need to modify the permissions in your existing repo clone
- JasonEpstein
Employee
Thanks, Mikesisav.
The umask value of 0027 ends with a 7, which will strip away all permissions for user "other". This will continue to happen even if you reinstall AST. To solve this, you need to either change the umask (by running a command like "umask 0022", which removes write permissions from users, "group" and "other", but leaves read and execute permissions intact) or manually add read (and execute, where appropriate) permissions to all files, recursively, in the directory after cloning the repo.
Running the umask command is the cleanest way to overcome this (but would require a fresh clone of the Git repo), but you might not have permissions to run that command. If you don't, or would prefer to preserve the configuration you've already done, you'll need to modify the permissions in your existing repo clone.
Hope that makes sense. Let me know if anything is unclear and, if you run through this, let me know how it goes.
- Mikesisav
Altostratus
thanks, jason. here go :
[user@f05astpl001 application-study-tool]$ pwd
/nas/home/user/application-study-tool
[user@f05astpl001 application-study-tool]$ umask
0027
[user@f05astpl001 application-study-tool]$ ls -l otel-collector-config/defaults/
ls: cannot access 'otel-collector-config/defaults/': No such file or directory
[user@f05astpl001 application-study-tool]$ - JasonEpstein
Employee
Hello Mikesisav,
First, the /etc in the logs refers to this directory within the container (not the host), so it's OK if we don't see anything related to Prometheus in your host's /etc directory.
Second, can you run "umask" and "ls -l otel-collector-config/defaults/" from your application-study-tool/ directory? It looks like you have permissions issues, but this will confirm, and also give us one possible cause.
- Mikesisav
Altostratus
- Mikesisav
Altostratus
Thanks, @jeff and @jason.
Update....complete wipe of AST .tarballer and pulled new version from github repo.
Moved forward on with this command : # Run the configuration generator docker run --rm -it -w /app -v ${PWD}:/app --entrypoint /app/src/bin/init_entrypoint.sh python:3.12.6-slim-bookworm --generate-config
But, having issuers with docker compose up. Getting permission issuers with /etc/promethus directory and files that does not seem to exist.
Have a ticket with support but taking advantage of the community here and other support avenues.
any idea what process builds out /etc/promethus. see below error:
prometheus | ts=2025-11-24T19:25:14.744Z caller=main.go:184 level=info msg="Experimental OTLP write receiver enabled" prometheus | ts=2025-11-24T19:25:14.746Z caller=main.go:537 level=error msg="Error loading config (--config.file=/etc/prometheus/prometheus.yml)" file=/etc/prometheus/prometheus.yml err="open /etc/prometheus/prometheus.yml: permission denied" otel-collector-1 | Error: failed to get config: cannot resolve the configuration: cannot retrieve the configuration: unable to read the file file:/etc/otel-collector-config/defaults/bigip-scraper-config.yaml: open /etc/otel-collector-config/defaults/bigip-scraper-config.yaml: permission denied otel-collector-1 | 2025/11/24 19:25:14 collector server run finished with error: failed to get config: cannot resolve the configuration: cannot retrieve the configuration: unable to read the file file:/etc/otel-collector-config/defaults/bigip-scraper-config.yaml: open /etc/otel-collector-config/defaults/bigip-scraper-config.yaml: permission denied
grafana | logger=settings t=2025-11-24T19:25:15.467861683Z level=info msg="Config loaded from" file=/usr/share/grafana/conf/defaults.ini grafana | logger=settings t=2025-11-24T19:25:15.467872603Z level=info msg="Config loaded from" file=/etc/grafana/grafana.ini grafana | logger=settings t=2025-11-24T19:25:15.467876995Z level=info msg="Config overridden from command line" arg="default.paths.data=/var/lib/grafana" grafana | logger=settings t=2025-11-24T19:25:15.467881287Z level=info msg="Config overridden from command line" arg="default.paths.logs=/var/log/grafana" grafana | logger=settings t=2025-11-24T19:25:15.467884836Z level=info msg="Config overridden from command line" arg="default.paths.plugins=/var/lib/grafana/plugins" grafana | logger=settings t=2025-11-24T19:25:15.467888419Z level=info msg="Config overridden from command line" arg="default.paths.provisioning=/etc/grafana/provisioning" grafana | logger=settings t=2025-11-24T19:25:15.467891954Z level=info msg="Config overridden from command line" arg="default.log.mode=console" grafana | logger=settings t=2025-11-24T19:25:15.467896151Z level=info msg="Config overridden from Environment variable" var="GF_PATHS_DATA=/var/lib/grafana" grafana | logger=settings t=2025-11-24T19:25:15.467900698Z level=info msg="Config overridden from Environment variable" var="GF_PATHS_LOGS=/var/l
Thanks and Happy Friday.
Help guide the future of your DevCentral Community!
What tools do you use to collaborate? (1min - anonymous)Recent Discussions
Related Content
* Getting Started on DevCentral
* Community Guidelines
* Community Terms of Use / EULA
* Community Ranking Explained
* Community Resources
* Contact the DevCentral Team
* Update MFA on account.f5.com