# Docker Management : Portainer

# Portainer 소개

[![portainer_snapshot1.png](https://wiki.dhcloud.me/uploads/images/gallery/2023-06/scaled-1680-/f9qgIkgedQZIu1Av-portainer-snapshot1.png)](https://wiki.dhcloud.me/uploads/images/gallery/2023-06/f9qgIkgedQZIu1Av-portainer-snapshot1.png)

Docker를 Web Base GUI 환경으로 아주 쉽게 사용할 수 있게 해주는 Docker 유저에게는 필수 Docker 관리툴 입니다.

[![portainer_snapshot2.png](https://wiki.dhcloud.me/uploads/images/gallery/2023-06/scaled-1680-/6zwt2tztKPYH3d4W-portainer-snapshot2.png)](https://wiki.dhcloud.me/uploads/images/gallery/2023-06/6zwt2tztKPYH3d4W-portainer-snapshot2.png)

[![portainer_snapshot3.png](https://wiki.dhcloud.me/uploads/images/gallery/2023-06/scaled-1680-/S3QTmVPfKVA9e0f5-portainer-snapshot3.png)](https://wiki.dhcloud.me/uploads/images/gallery/2023-06/S3QTmVPfKVA9e0f5-portainer-snapshot3.png)

# 설치

# Community Edition

볼륨을 Mapping할 디렉토리를 생성합니다.

제 경우 "/voume1/docker/portainer/data"라는 디렉토리를 생성하였습니다.

```shell
mkdir /voume1/docker/portainer/data
```

아래의 docker run 스크립트를 실행 합니다.

```shell
docker run -d -p 8000:8000 -p 9443:9443 --name portainer --restart=always -v /var/run/docker.sock:/var/run/docker.sock -v /voume1/docker/portainer/data:/data portainer/portainer-ce:latest
```

접속은 "IP:9443" 입니다.

# Business Edition

Business Edition은 Community Edition 보다 많은 옵션을 제공합니다.

[![portainer_edition.jpg](https://wiki.dhcloud.me/uploads/images/gallery/2023-06/scaled-1680-/portainer-edition.jpg)](https://wiki.dhcloud.me/uploads/images/gallery/2023-06/portainer-edition.jpg)

Business Edition은 Node <s>5개</s> 3개 (현재는 바뀌었네요... 예전 가입자까지만 5개 입니다.)까지 무료 License를 제공하며, "https://www.portainer.io/take-5"에서 License를 취득 후 사용 가능합니다.

볼륨을 Mapping할 디렉토리를 생성합니다.

제 경우 "/voume1/docker/portainer"라는 디렉토리를 생성하였습니다.

```shell
mkdir /voume1/docker/portainer
```

아래의 docker run 스크립트를 실행 합니다.

```shell
docker run -d -p 8000:8000 -p 9443:9443 --name=portainer --restart=always -v /var/run/docker.sock:/var/run/docker.sock -v /volume1/docker/portainer:/data portainer/portainer-ee:latest
```

접속은 "IP:9443" 입니다. 처음 접속을 하면 License 입력창이 나오고 License 입력 후 사용이 가능합니다.

[![portainer_ee.jpg](https://wiki.dhcloud.me/uploads/images/gallery/2023-06/scaled-1680-/portainer-ee.jpg)](https://wiki.dhcloud.me/uploads/images/gallery/2023-06/portainer-ee.jpg)

# 환경설정

# Open AI (ChatGPT 3.5) 연동

<p class="callout warning">이 기능는 "**<span style="color: rgb(224, 62, 45);">Business Edition</span>**"에서만 지원 됩니다.</p>

"Setting &gt; Experimental features &gt; Enable OpenAI integration"을 활성화하고, "Save Experimental Settings"를 누릅니다.

[![portainer1.jpg](https://wiki.dhcloud.me/uploads/images/gallery/2023-06/scaled-1680-/TI6mJO7xqyvNkbL3-portainer1.jpg)](https://wiki.dhcloud.me/uploads/images/gallery/2023-06/TI6mJO7xqyvNkbL3-portainer1.jpg)

Open AI에서 API Key를 발급 받아야 합니다.

API Key가 없다면 "[https://platform.openai.com/](https://platform.openai.com/)"에 들어가 "Personal &gt; View API keys"로 이동 합니다.

[![portainer2.jpg](https://wiki.dhcloud.me/uploads/images/gallery/2023-06/scaled-1680-/WcAx3kR28NsuK4Av-portainer2.jpg)](https://wiki.dhcloud.me/uploads/images/gallery/2023-06/WcAx3kR28NsuK4Av-portainer2.jpg)

"API keys"에서 "Create new secret key"를 눌러 API Key를 발급 받습니다.

[![portainer3.jpg](https://wiki.dhcloud.me/uploads/images/gallery/2023-06/scaled-1680-/fJDFR1ZoyQDDOGtj-portainer3.jpg)](https://wiki.dhcloud.me/uploads/images/gallery/2023-06/fJDFR1ZoyQDDOGtj-portainer3.jpg)

<p class="callout warning">발급된 API Key는 발급시만 조회 가능하고 **<span style="color: rgb(224, 62, 45);">이후 Key값 재조회가 불가</span>** 합니다. 지속 사용하실거라면 반드시 메모장 같은곳에 메모해 두세요.  
</p>

Portainer의 "Admin &gt; My account"로 이동 합니다.

[![portainer4.jpg](https://wiki.dhcloud.me/uploads/images/gallery/2023-06/scaled-1680-/LEMuh7ql7CyYlQhT-portainer4.jpg)](https://wiki.dhcloud.me/uploads/images/gallery/2023-06/LEMuh7ql7CyYlQhT-portainer4.jpg)

"Open AI intergration"에 발급받은 Open AI API를 넣어주고 "Save"를 누릅니다.

[![portainer5.jpg](https://wiki.dhcloud.me/uploads/images/gallery/2023-06/scaled-1680-/vX8HR7HFP7VXdXAn-portainer5.jpg)](https://wiki.dhcloud.me/uploads/images/gallery/2023-06/vX8HR7HFP7VXdXAn-portainer5.jpg)

설정이 완료됐으면 아래와 같이 사용 가능합니다.

하단 위측을 보면 아래 사진과 같은 아이콘이 나옵니다. 이 부분을 클릭하면 Chatbot 창으로 연결 됩니다.

[![portainer_ai1.png](https://wiki.dhcloud.me/uploads/images/gallery/2023-06/scaled-1680-/wl1geac5RVi1ty6A-portainer-ai1.png)](https://wiki.dhcloud.me/uploads/images/gallery/2023-06/wl1geac5RVi1ty6A-portainer-ai1.png)

[![portainer_ai2.png](https://wiki.dhcloud.me/uploads/images/gallery/2023-06/scaled-1680-/iVzkNjft4HbGRmXy-portainer-ai2.png)](https://wiki.dhcloud.me/uploads/images/gallery/2023-06/iVzkNjft4HbGRmXy-portainer-ai2.png)

# Application Templates

Application templates을 추가하는 방법입니다.

Portainer의 "Settings"로 들어가 "Application Settings &gt; App Templates"의 URL에 아래 주소를 입력합니다.

[![portainer_template1.png](https://wiki.dhcloud.me/uploads/images/gallery/2023-07/scaled-1680-/tVxJPKJuTBXNp2Kh-portainer-template1.png)](https://wiki.dhcloud.me/uploads/images/gallery/2023-07/tVxJPKJuTBXNp2Kh-portainer-template1.png)

<p class="callout success">https://raw.githubusercontent.com/Lissy93/portainer-templates/main/templates.json</p>

"Local &gt; App Templates"로 들어가면 약 400개가 넘는 Templates List가 나옵니다.

[![portainer_template2.png](https://wiki.dhcloud.me/uploads/images/gallery/2023-07/scaled-1680-/N9oYUQYlqVSBwHXe-portainer-template2.png)](https://wiki.dhcloud.me/uploads/images/gallery/2023-07/N9oYUQYlqVSBwHXe-portainer-template2.png)