문서유형ㅣ기술 정보
분야ㅣ인터페이스/연동
적용제품버전ㅣTibero 7
문서번호ㅣTIITI059
개요
본 문서는 Portainer를 활용해, Template으로 사용할 Tibero Image 생성과 Container 배포를 진행합니다.
방법
Tibero Image
Images
Container를 생성하려면 Image가 필요합니다.
Image는 VM의 Template과 비슷한 개념입니다.
Image에는 Tibero 필수 패키지, Linux 유틸리티 등 사용에 필요한 환경 준비 내용이 포함됩니다.
Dockerfile
Portainer 페이지에서 Image > Build a new image를 선택합니다.
name: Image 이름과 버전입니다.
Web editor: Image에 사용할 Dockerfile 내용입니다.
Tibero Dockerfile
# OS Image
FROM rockylinux:9.3
# Signature
MAINTAINER Junsu Yoon
# Repo Update
RUN yum update -y
# Tibero Package (ncurses version:6)
RUN yum install -y gdb gcc libaio-devel
# tools
RUN yum install -y wget file lsof zip tree iproute passwd psmisc vim
RUN yum install -y sysstat net-tools tcpdump procps
RUN yum install -y openssh-server openssh-clients
# Extra Repo Install
RUN yum install -y epel-release
# Tibero Package (ncurses version:5)
RUN yum install -y ncurses-c++-libs-6.2-10.20210508.el9_6.2.x86_64
RUN yum install -y ncurses-compat-libs-6.2-8.20210508.1.el9.x86_64
RUN yum install -y ncurses-devel-6.2-10.20210508.el9_6.2.x86_64
RUN yum remove -y epel-releaseOS Image를 rockylinux:9.3으로 사용하면 ncurses 관련 오류가 발생할 수 있습니다.
기본적으로 ncurses6과 tinfo6이 설치됩니다. Extra Repo를 활성화한 뒤 ncurses5와 tinfo5도 함께 설치합니다.
- ncurses6, tinfo6: 8, 9
- ncurses5, tinfo5: 6, 7
기본적으로 사용할 도구들은 미리 설치합니다.
Dockerfile 내용을 입력한 뒤 Build the image 버튼을 클릭합니다.
“Image building in progress..” 진행이 완료되면 생성된 Image를 확인할 수 있습니다.
- Build가 완료되면, Output에서 진행 되었던 정보를 확인할 수 있습니다.
- 위와 같이 Image 생성이 완료된 정상 메시지가 아닌 경우 생성에 실패합니다.
- 만약, 실패했다면 실패한 Step과 Dockerfile을 비교하여, 조치하면 됩니다.
Tibero Container
Container 생성
생성된 Image를 확인합니다.
Container 생성을 준비합니다.
Container 이름과 Image를 선택합니다.
Interactive & TTY
- 터미널 연결을 통한 사용을 위해 위 기능을 활성화 합니다.
Privileged mode 활성화
- Tibero의 경우 시스템 호출을 많이 하기 때문에 필수적으로 활성화 한다.
Privileged mode가 활성화되면 대부분의 기능이 활성화됩니다. 다만 필요한 항목을 한 번 더 확인합니다.
- IPC_LOCK 활성화
Tibero에서 Memory Lock을 수행하기 때문에 필수입니다.
mlock (tbcm) 기능과 관련됩니다. SYS_PTRACE 활성화
gdb 사용을 위해 필수입니다.
callstack dump 수행 시 gdb를 사용합니다.
생성 후 Container 접속을 확인합니다.
Tibero 설치
PS C:\Users\junsu-pc\Desktop\portainer_test> ls
디렉터리: C:\Users\junsu-pc\Desktop\portainer_test
Mode LastWriteTime Length Name
---- ------------- ------ ----
-a---- 2025-01-28 오후 3:30 483653580 tibero6-bin-FS07_CS_2005-linux64_3.10-286096-20250127144447.tar.gz
-a---- 2025-11-28 오전 9:51 586777705 tibero7-bin-FS02_PS04-linux64_4.18-305874-20251124164136.tar.gz
PS C:\Users\junsu-pc\Desktop\portainer_test> docker cp .\tibero7-bin-FS02_PS04-linux64_4.18-305874-20251124164136.tar.gz tibero_test:/tmp/
Successfully copied 587MB to tibero_test:/tmp/docker cp 명령을 통해 Tibero 바이너리를 Container 안으로 복제합니다. 비교적 최신 바이너리를 사용하는 것을 권장합니다.
T6 FS06 버전이라면 141005 패치가 적용되어 있거나, 그 이상 버전에서는 해당 사항이 직반되었는지 확인이 필요합니다.
[root@9a00815f7ac0 /]# cd ~
[root@9a00815f7ac0 ~]# tar -xvzf /tmp/tibero7-bin-FS02_PS04-linux64_4.18-305874-20251124164136.tar.gz
[root@9a00815f7ac0 ~]# ls
anaconda-ks.cfg anaconda-post.log original-ks.cfg tibero7- Container 내부에서 복사한 바이너리 압축 해제 후 사용하면 된다.
마치며
- Portainer 페이지로 Tibero Image와 Container 배포를 진행할 수 있습니다.
- 다음 문서에서는 Portainer Stack기능을 활용하여, Tibero Container 자동으로 생성/삭제 관련 내용을 진행 합니다.
예) Portainer Stack을 통해, 다양한 Tibero 구성을 자동화할 수 있습니다.