본문 바로가기
Infra/Docker_K8S

Dockerfile 작성법8 - USER

by 골든크랩 2022. 7. 31.
728x90
반응형

 

 

USER :  특정계정으로 실행하라.  계정도 만들어줌.


root@template:~/Lab# cat Dockerfile.9
FROM centos:7
RUN ["useradd" , "sysadmin"]
RUN ["whoami"]
USER sysadmin
RUN ["whoami"]

 

도커허브에서 젠킨스 예를 보라

 

ENV : 컨테이너 안에서 변수

ARG : docker 파일안에서 변수 선언하겠다.

 

예)

ARG user=jenkins

ARG group=jenkins

 

 

root@template:~/Lab#
root@template:~/Lab# docker  build  -t   myimage:1.0    -f   Dockerfile.9    .
Sending build context to Docker daemon  198.7kB
Step 1/5 : FROM centos:7
7: Pulling from library/centos
2d473b07cdd5: Pull complete
Digest: sha256:c73f515d06b0fa07bb18d8202035e739a494ce760aa73129f60f4bf2bd22b407
Status: Downloaded newer image for centos:7
 ---> eeb6ee3f44bd
Step 2/5 : RUN ["useradd" , "sysadmin"]
 ---> Running in f7c472fba0de
Removing intermediate container f7c472fba0de
 ---> 586fd78f02a9
Step 3/5 : RUN ["whoami"]
 ---> Running in b32cffecbc19
root
Removing intermediate container b32cffecbc19
 ---> 512de7b790ac
Step 4/5 : USER sysadmin
 ---> Running in 6db611b77803
Removing intermediate container 6db611b77803
 ---> 34d0cd4ae0ab
Step 5/5 : RUN ["whoami"]
 ---> Running in 9658450801e1
sysadmin
Removing intermediate container 9658450801e1
 ---> b6a0f8626e85

 

----------------------------------------------------------------

 

root@template:~/Lab# docker   run   -it    myimage:1.0
[sysadmin@07c12b3e2107 /]$
[sysadmin@07c12b3e2107 /]$ whoami
sysadmin
[sysadmin@07c12b3e2107 /]$
[sysadmin@07c12b3e2107 /]$ cat /etc/passwd
root:x:0:0:root:/root:/bin/bash
bin:x:1:1:bin:/bin:/sbin/nologin
daemon:x:2:2:daemon:/sbin:/sbin/nologin

.....
sysadmin:x:1000:1000::/home/sysadmin:/bin/bash
[sysadmin@07c12b3e2107 /]$

728x90
반응형

댓글