R
RunPod6mo ago
Orazur

Environment variables missing

Hello, I am creating a pod with environment variables, but it doesn't seem to work. When I connect via SSH, and echo $ENV_VAR_NAME it prints nothing. Am I missing something? Also, printenv doesn't show the default environment variables from runpod, nor my added environment vars. I am using my own template, but the Docker image is build on top of an official runpod image.
printenv
SHELL=/bin/bash
PWD=/
LOGNAME=root
MOTD_SHOWN=pam
HOME=/root
LS_COLORS=rs=0:di=01;34:ln=01;etc...
SSH_CONNECTION=xxxxx
TERM=xterm-256color
USER=root
SHLVL=1
LC_CTYPE=C.UTF-8
SSH_CLIENT= xxxxx
PATH=/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games:/usr/local/games:/snap/bin
SSH_TTY=/dev/pts/0
OLDPWD=/workspace
TERM_PROGRAM=WarpTerminal
_=/usr/bin/printenv
printenv
SHELL=/bin/bash
PWD=/
LOGNAME=root
MOTD_SHOWN=pam
HOME=/root
LS_COLORS=rs=0:di=01;34:ln=01;etc...
SSH_CONNECTION=xxxxx
TERM=xterm-256color
USER=root
SHLVL=1
LC_CTYPE=C.UTF-8
SSH_CLIENT= xxxxx
PATH=/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games:/usr/local/games:/snap/bin
SSH_TTY=/dev/pts/0
OLDPWD=/workspace
TERM_PROGRAM=WarpTerminal
_=/usr/bin/printenv
Solution:
Its docker yeah, environment in linux is per user i guess, so when you login using ssh, your env's wont be there because the docker container starts your application as a different user
Jump to solution
6 Replies
nerdylive
nerdylive6mo ago
Try recreating the pod, how are you connecting to ssh? try checking via web terminal if your key is there Unless you're accessing on your main user like from ENTRYPOINT or CMD, your env's arent there
Orazur
OrazurOP6mo ago
I already tried with multiple pods, but get the same result. I create everything via web terminal, and the key are visible in the web terminal. Oh, I do not understand what this means, but I guess that's my issue? I connect via the ssh command given on the website when I create a new pod Ah, you mean I should access them via a script that is ran automatically by CMD? I will try that and let you know if it solves my issue.
Solution
nerdylive
nerdylive6mo ago
Its docker yeah, environment in linux is per user i guess, so when you login using ssh, your env's wont be there because the docker container starts your application as a different user
nerdylive
nerdylive6mo ago
Yes, or re export it again printenv | awk -F = '{ print "export " $1 "="" $2 """ }' >> /etc/rp_environment echo 'source /etc/rp_environment' >> ~/.bashrc That helps automatically exporting all env variables
Orazur
OrazurOP6mo ago
I added "env > saved_env_var.txt" in my start.sh file, and the txt file contains everything that was missing, so it should solve my issue. Thank you very much!
Want results from more Discord servers?
Add your server