'Docker'에 해당되는 글 4

  1. 2022.04.01 jenkins arm docker 설치 및 업데이트 하기 1
  2. 2018.12.11 docker cmd 기본 예제
  3. 2017.08.08 centos7, python3, django
  4. 2017.08.08 docker centos7 tomcat8

jenkins arm docker 설치 및 업데이트 하기

현재 클라우드에서 도커로 젠킨스를 설치 할려고 할때 ARM 운영체제의 경우 쓸만한건 얼마 없습니다.

그나마 편하게 쓸수 있는게 https://hub.docker.com/r/mlucken/jenkins-arm 정도일겁니다.

 

문제는 이게 2년전이라는 거죠...

 

사용 자체는 문제 없으나 그냥 사용 하게 되면 jenkins 버전에 오래됐다고 보안 오류 표시가 쭈르룩 한다는 거죠...

 

그러면 킹받죠 어쩔 도커 저쩔 젠킨슨.......

 

뭐 IP 대역을 제한한다고 하면 그나마 괜찮겠지만 찝찝함은 어떻게 할 수가 없죠

 

그래서 해당 버젼에서 최신 버전을 사용하는 방법을 알려드릴까 합니다.

 

#docker run

docker run -dit --name jenkins -p 9000:8080 -p 50000:50000 -v ~/jenkins:/var/jenkins_home --env JAVA_OPTS="-d64 -Xmx800m -XX:+UseSerialGC" --restart always mlucken/jenkins-arm

 

#download jenkins

wget https://updates.jenkins.io/download/war/2.332.1/jenkins.war --no-check-certificate

 

#copy jenkins to docker container
docker cp jenkins.war docker-container-id:/usr/share/jenkins

 

#docker restart

docker restart docker

 

끗~ 

 

쉽죠?

docker cmd 기본 예제

기본

docker run ubuntu:18.04 bash


도커 이름 지정

docker run --name test 


데몬/서비스 모드

docker run --name test  -d ubuntu:18.04 bash


인터액션 모드

docker run --name test  -dit ubuntu:18.04 bash


볼륨마운트 (/data를 도커에 /opt/date로 마운트 할 경우)

docker run --name test -dit -v /data:/opt/data ubuntu:18.04 bash


포트를 오픈할경우(해당 포트만 오픈, 도커포트->호스트포트)

docker run --name test -dit -v /data:/opt/data -p 8080:80 ubuntu:18.04 bash


호스트 네트워크에 연결할경우(포트 명령없이 오픈 가능)

docker run --name test -dit -v /data:/opt/data --net host ubuntu:18.04 bash


호스트 권한을 부여할 경우 (도커에서 도커를 실행할때)

docker run --name test -dit -v /data:/opt/data -v /var/run/docker.sock:/var/run/docker.sock -host net ubuntu:18.04 bash



도커 저장

docker commit test


도커를 파일로 저장

docker export test > test.tar

docker save -o test.tar


도커임포트 (익스포트와 임포트는 export/import save/load가 짝임)

docker import test.tar

docker load -i test.tar


도커에서 호스트쉘로 빠지기

ctrl+d (도커중지)

ctrl+p+q (실행상태에서 빠짐)


centos7, python3, django

vi Dockerfile

FROM centos:centos7

#Install Programs
RUN yum update -y
RUN yum install -y wget epel-release
RUN yum install -y https://centos7.iuscommunity.org/ius-release.rpm
RUN yum install -y python36u-pip
RUN yum install -y python-pip
RUN pip install --upgrade pip
RUN pip install django
#RUN django-admin —version

#mkdir
#RUN mkdir /opt
RUN mkdir /opt/django

EXPOSE 8000

#BUILD CMD
docker build --tag centos-django:lastest .

#RUN CMD

docker run -dit --name=centosdjango -p 8000:8000 centos-django /bin/sh


docker centos7 tomcat8

#BUILD CMD
docker build --tag centos-tomcat:0.21 .

#RUN CMD
docker run -dit --name=centostomcat8 -p 8080:8080 centos-tomcat:0.21 /bin/sh

#Dockerfile
FROM centos:centos7

#Install WGET
RUN yum install -y wget tar unzip

# Download JDK
RUN yum -y install java-1.8.0-openjdk

# Download Apache Tomcat 8
RUN cd /tmp;wget http://mirror.apache-kr.org/tomcat/tomcat-8/v8.5.16/bin/apache-tomcat-8.5.16.zip

# untar and move to proper location
RUN cd /tmp;unzip /tmp/apache-tomcat-8.5.16.zip

RUN cd /tmp;mv apache-tomcat-8.5.16 /opt/tomcat8

RUN chmod -R 755 /opt/tomcat8

#ENV JAVA_HOME /usr/lib/jvm/java-1.8.0-openjdk-1.8.0.141-1.b16.el7_3.x86_64

EXPOSE 8080

COPY tomcat-conf/tomcat-users.xml /opt/tomcat8/conf/
COPY tomcat-conf/context.xml /opt/tomcat8/webapps/manager/META-INF/

RUN rm -rf /opt/tomcat8/webapps/host-manager /opt/tomcat8/webapps/examples /opt/tomcat8/webapps/docs

CMD /opt/tomcat8/bin/catalina.sh run