콘텐츠로 건너뛰기
  • 홈
  • 카테고리
  • 최근
  • 태그
  • 인기
  • 사용자
  • 그룹
축소
브랜드 로고

AskFront 포럼

P

purndal

@purndal
소개
게시물
10
토픽
2
Shares
0
그룹
0
팔로워
0
팔로잉
0

게시물

최근 최고 찬반이 팽팽한

  • navystack/iventoy 질문
    P purndal

    혹시 몰라서 적어봅니다.

    version: "3.9"
    services:
      iventoy:
        image: navystack/iventoy:latest
        restart: always
        network_mode: host
        # 사용 포트 : 16000, 26000, 10809, 69
        volumes:
          - isos:/app/iso
          - data:/app/data
        environment:
          - AUTO_START_PXE=true
        privileged: true # 반드시 필요한 옵션입니다.
    
    # 볼륨 관련 경로는 만들어주셔야 합니다.
    
    volumes:
      isos:
        driver: local
        driver_opts:
          o: bind
          type: none
          device: /data/iventoyisos
    
      data:
        driver: local
        driver_opts:
          o: bind
          type: none
          device: /data/iventoydata
    

    로 수정하면 docker 내부 ip가 아니라 서버의 ip로 구동이 가능하도록 됩니다. 포워딩이 아니라. 그냥 서버로
    바로 연결이 된다고 알고 있습니다.

    지금 캡쳐에 보면 ip configuration 에서 ip가 docker 내부 ip인 듯 합니다.
    서버의 아이피로 변경을 해주셔야 할 듯 하네요.
    192.168.0.xxx 로 변경을 해주셔야 할 듯 합니다.

    이런것 테스트 해보고 싶은데 조만간 얻어놓은 서버 하나 깔아서 해봐야겠네요.. ㅎ.

    Docker (도커)

  • 기분탓인지 몰라도 어째 하드가격은 떨어지기는 커녕 오히려 올라가는거같네요 ㅋㅋ
    P purndal

    hdd 지금 남아있는 회사가 몇 곳 없지 않나요? ㅎ.
    ssd는 메모리를 엄청 찍다 보니 가격하락은 당연시될 듯하네요.. 뭐 고사양은 몇 군대에서 잡겠지만 저장용은
    그리 빠를 필요가 없을 테니까요.

    자유로운 소통

  • nodebb docker 설치하기
    P purndal

    @navystack
    앗.. 감사합니다. 조만간 한번 재 설치해서 적용해보도록 하겠습니다. ㅎ.

    Docker (도커)

  • 그누보드6 docker 에 대해서 문의드려요..
    P purndal

    @navystack
    . env는 숨김파일이라 보이지 않았네요 ㅎ. ls -la로 하면 다 보여요..
    그리고 여기서 만들어준 docker만 arm이 설치가 가능했습니다. 다른 분들이 만들어준 것들은 설치가 안되더군요 ㅎㅎ.

    우선 설치는 잘 되었습니다. 폴더 퍼미션 에러 대책도 이제 알게 되었으니 좋은 경험이었습니다.
    다시 한번 좋은 서비스 해주셔서 감사합니다. 아.. 언젠가 dockerfile 궁금한 것이 있으면 질문을 드리겠습니다. ㅎ.

    자유로운 소통

  • 그누보드6 docker 에 대해서 문의드려요..
    P purndal

    @navystack

    이거 제가 괜히 잘 모르면서 이상한 이야기를 한 것이 아닌가 싶기도 합니다. ㅠㅠ;;
    혹시 몰라서 빠르게 설치하고 테스트해 봤습니다.
    dockge로 올려봤으며. 에러가 나타나더군요. ubuntu amd64와 oci arm 두 군대 해봤습니다.

    a.png

    와 같이 오류가 나왔습니다. 그래서 혹시나 해서 data 폴더를 보니 연결될 줄 알았는데 파일이 없더라고요.
    전 docker image의 폴더와 매핑을 하면 그 속의 파일이 전부 보여줄 줄 알았는데 추가로 생성되는 파일만 보이는 듯합니다.


    아래 코드로 수정을 하여서 실행해 봤습니다.

    우선 폴더를 생성하고 실행해 줬습니다.

    sudo mkdir -p data
    

    compose 를 입력해줬습니다.

    version: "3.8"
    services:
      gnuboard6:
        container_name: gnuboard6
        image: navystack/gnuboard-g6:nightly-latest
        restart: always
        volumes:
          - gnuboard6-data:/g6
        environment:
          TZ: Asia/Seoul
        ports:
          - 8000:8000
        depends_on:
          - gnuboard6-postgresql
        networks:
          - g6
          - npm-network
      gnuboard6-postgresql:
        image: postgres:16-bullseye
        restart: always
        environment:
          POSTGRES_DB: postgres
          POSTGRES_USER: postgres
          POSTGRES_PASSWORD: 6VqahNQruCdfnzKSFaUmE8pUd2o7Ee
          TZ: Asia/Seoul
        volumes:
          - ./postgresql:/var/lib/postgresql/data
        networks:
          - g6
    volumes:
      gnuboard6-data:
        driver: local
        driver_opts:
          o: bind
          type: none
          device: ./data/
    networks:
      g6: {}
      npm-network:
        external: true
    

    b.png

    c.png

    정상적으로 파일이 올라오더군요.
    정말이지 잘 모르는 상태에서 이야기는 조심해야 할 듯 합니다. ㅠㅠ;;

    또 하나의 걱정이 지금 올려져 버린 이미지를 누군가가 사용하고 있다면 문제가 되지 않을가 하는 걱정도 생기더군요..
    이것참.. 걱정이 크네요 ㅎㅎ. ㅠㅠ;;

    자유로운 소통

  • nodebb docker 설치하기
    P purndal

    @navystack

    올려주신 코드로 실행 할 경우 정상적으로 작동되었습니다.
    아 선행작업으로 폴더를 생성해줘야 되지만 정상작동 됩니다. ㅎ.

    volumes:
      nodebb-config:
        driver: local
        driver_opts:
          o: bind
          type: none
          device: ./config/
    

    위 부분처럼 연결을 해주면 퍼미션 에러 없이 동작하더라고요 하지만 제가 알던 방식으로 해버리면 에러가 났지만.
    사용법을 알았으니 올려주신 compose로 사용할 경우 문제가 없었습니다. ㅎ.

    하지만 nodebb가 제 입맛에 안맞아서 코드정리만 해둔 상태입니다.. ㅠㅠ;; 또 열심히 찾아봐야죠. ㅎ.


    아.. grafana 설치를 할 경우도 동일하게 퍼미션 에러나 나오더군요.

    version: "3.8"
    services:
      grafana:
        image: grafana/grafana-enterprise
        container_name: grafana
        restart: unless-stopped
        ports:
          - 3000:3000
        volumes:
          - ./grafana:/var/lib/grafana
    

    위와 같이 제가 아는 방법으로 사용을 하면 퍼미션 에러가 나타나더라고요.. 동일하게
    하지만. 알려주신 코드를 응용하고 폴더를 생성한 후 아래코드 처럼 연결하면 문제 없이 오류가 없더군요..

    version: "3.8"
    services:
      grafana:
        image: grafana/grafana-enterprise
        container_name: grafana
        restart: unless-stopped
        ports:
          - 3000:3000
        volumes:
          - grafana-storage:/var/lib/grafana
    volumes:
      grafana-storage:
        driver: local
        driver_opts:
          o: bind
          type: none
          device: ./grafana/
    

    이로서 또 하나의 응용 방법을 알게 되었습니다. ㅎㅎㅎ. 감사합니다.

    Docker (도커)

  • nodebb docker 설치하기
    P purndal

    @navystack

    코드를 원본 그대로 설치를 해보았습니다. 정상적으로 작동이 됩니다.

    우선 dockge로 설치를 진행했으며.. 처음에는 오류가 발생을 했습니다.

    a.png

    그래서 폴더를 생성을 해주었습니다.

    sudo mkdir -p config build uploads
    

    그리고 실행을 하니 동작을 했습니다. ㅎㅎㅎ. 굳이 config.json 을 만들지 않아도 되더군요.. ㅠㅠ...

    proxy_cache_path /var/run/openresty/proxy_cache levels=1:2 keys_zone=my_cache:10m max_size=10g inactive=60m;
    .
    .
    .
    

    요런 설정 감사하지만 제가 사용하는 범위를 넘어섰습니다. ㅎㅎ. ㅠㅠ;;
    지금 나스를 운영하는 정도의 스킬? 만 가지고 있고 필요한 것들 조금씩 알아가다 보니.. 참조 후 나중에 적용해볼 수 있도록 하겠습니다. 감사합니다.


    아. 777을 만드는 것은 퍼미션 에러가 나타나서 그랬습니다. 웹에서 검색을 하니 해주라고 설정을 했고 설치가 완성
    되어서 그랬던 것입니다.

    아래와 같이 폴더를 매핑을 해봤습니다.

    version: "3.8"
    services:
      nodebb:
        container_name: nodebb
        restart: unless-stopped
        image: navystack/nodebb:latest
        volumes:
          - ./config:/opt/config
          - ./build:/usr/src/app/build
          - ./uploads:/usr/src/app/public/uploads
          - ./modules:/usr/src/app/node_modules
        environment:
          OVERRIDE_UPDATE_LOCK: true
        networks:
          - interanl
        ports:
          - 4567:4567
      redis:
        container_name: redis
        image: redis:7-bookworm
        restart: unless-stopped
        volumes:
          - ./redis:/data
        networks:
          - interanl
    networks:
      interanl: null
    

    이럴 경우

    b.png

    이와 같이 오류가 생성이 되더군요 ㅎㅎ. 그래서 777로 해줬던 것입니다.
    ...
    아..
    생성 폴더의 권한은 root 로 되어져 있고 uid 는 1002 입니다. docker bash 로 접속해서 확인해보면 정상적으로
    nodebb 되어져 있습니다. 알려주신 코드로 하고 폴더 생성만 하면 정상적으로 잘 됩니다. :)

    Docker (도커)

  • 그누보드6 docker 에 대해서 문의드려요..
    P purndal

    @navystack

    지금 리눅스 및 서버를 본격적으로 만진 것이 1년도 되지 않아서 그냥 하라는 대로 본 것대로 기준을 삼아서 진행하다 보니..
    그 범위에서 벗어나지 않고 있기도 합니다.

    현 dockge를 사용해서 root 일 듯합니다. 실행은 기본적으로 사용하라는 /opt/ 폴더 root로 설정되어 있습니다.
    그다음 관리는 dockge로 관리하고 있습니다.

    g6의 경우 정상적으로 동작을 합니다. 만 레이아웃 수정이나 템플릿?이라고 하는 것들을 넣어두려고 하면
    docker 쉘에 접속을 해서 작업을 해야 하는 경우가 생긴다고 생각됩니다.

    uid 나 gid를 설정을 할 수 없을까 하는 것은 수정 가능한 개인 폴더에 연결을 하고 바로 수정을 할 수 없을까
    하는 부분 때문에 이야기를 들었습니다. 파일 저장은 /data 폴더이지만 나머지 설정은 다른 폴더에 있으니까요..
    그래서 ./data:/app 로 하면 될 줄 알았는데 이거 처음 dockerfile 생성 시 volume을 설정해야 하더라고요 ㅎㅎㅎ.
    하다 보니 하나씩 배워나가게 되더군요..

    지금 테스트 한 곳은 oci A1 uid 1002 / 개인서버 uid 1000 입니다.. 아.. g6는 다 동작 됩니다..

    자유로운 소통

  • nodebb docker 설치하기
    P purndal

    https://github.com/NavyStack/nodebb-docker

    NavyStack 님의 nodebb의 docker compose 를 이용한 설치 과정을 적어봅니다.
    우선 docker 이미지는 NavyStack이 만들어주신 이미지를 sql은 postgres를 이용하였습니다.

    docker compose

    version: "3.8"
    services:
      app:
        container_name: nodebb
        restart: unless-stopped
        image: navystack/nodebb:latest
        volumes:
          - ./setup.json:/usr/src/app/setup.json
    
          - ./data/build:/usr/src/app/build
          - ./data/uploads:/usr/src/app/public/uploads
          - ./data/config:/opt/config
          - ./data/nodebb-modules:/usr/src/app/node_modules
        ports:
          - 4567:4567/tcp
        environment:
          OVERRIDE_UPDATE_LOCK: true
          TZ: Asia/Seoul
        depends_on:
          - sql
        networks:
          - npm-network
          - nodebb
      sql:
        image: postgres:16.2-alpine
        restart: unless-stopped
        environment:
          POSTGRES_DB: nodebb
          POSTGRES_USER: nodebb
          POSTGRES_PASSWORD: VKSl2cYx7kD8hSL2s42xuDT7vqYDVp
          TZ: Asia/Seoul
        volumes:
          - ./postgresql:/var/lib/postgresql/data
        networks:
          - nodebb
    networks:
      nodebb: {}
      npm-network:
        external: true
    

    npm-network 는 개인적으로 사용하는 브릿지 네트워크이며 자신이 사용하는 네트워크를 넣어주시면 될꺼에요.

    우선 docker 를 구동하면 setup.json 파일이 없다고 하며 오류가 발생을 합니다. setup.json 이 폴더 형식으로
    만들어 질 수도 있습니다. 폴더로 만들어졌으면 폴더를 지우시고 vi 나 nano를 이용해서 setup.json을 열어줍니다.
    그리고 아래코드를 넣어줍니다.

    {
      "postgres": {
        "host": "sql",
        "port": 5432,
        "database": "nodebb",
        "username": "nodebb",
        "password": "VKSl2cYx7kD8hSL2s42xuDT7vqYDVp"
      }
    }
    

    그리고 data 폴더가 생성되며 하위 폴더가 생성되어져 있습니다. 폴더의 권한을 줍니다.

    sudo chmod -R 777 data
    

    이제 끝이 났습니다. 다시 docker을 시작하면 설치 화면시 생성 됩니다.
    관리자 아이디 암호를 넣어주시고 sql은 postgress를 맞춰주시면 설정 된 아이디 암호가 자동으로 들어가게 됩니다.

    수고하셨습니다.

    Docker (도커)

  • 그누보드6 docker 에 대해서 문의드려요..
    P purndal

    서버포럼 purndal입니다. docker를 보다가 궁금한 것이 있어서 github에 글을 남기려다 이곳까지 오게 되었네요. ㅎ
    다름이 아니라 이번에 g6에 대해서 docker compose를 사용해서 올려보는 과정에서 궁금한 것이 있어
    이렇게 문의드리게 되었네요.

    우선 적용한 코드네요.. 작동은 잘 됩니다.

    version: "3.8"
    services:
      app:
        container_name: gnuboard6
        image: navystack/gnuboard-g6:nightly-latest
        restart: always
        volumes:
          - ./data:/app/data
        environment:
          TZ: Asia/Seoul
        ports:
          - 8000:8000
        depends_on:
          - sql
        networks:
          - g6
          - npm-network
      sql:
        image: postgres:16-bullseye
        restart: always
        environment:
          POSTGRES_DB: postgres
          POSTGRES_USER: postgres
          POSTGRES_PASSWORD: 6VqahNQruCdfnzKSFaUmE8pUd2o7Ee
          TZ: Asia/Seoul
        volumes:
          - ./postgresql:/var/lib/postgresql/data
        networks:
          - g6
    networks:
      g6: {}
      npm-network:
        external: true
    

    정상적으로 웹 서비스가 올라가는 것을 확인을 하였습니다. 여기서 조금 의아한 것이 내부에 user를 g6로 구성해 주셨더라고요.
    하지만 docker을 올려진 폴더를 보면 root로 구성된 것을 확인했습니다.
    puid pgid 를 넣어서 user로 권한을 줄 수 없을까? 하는 생각이 들더라고요.. dockerfile 로 이미지를 만들어 봤지만
    아직 올리고 테스트를 하는 정도의 스킬? 을 가지고 있지 않다보니 힘이들더라고요 ㅎㅎ.

    그리고. dockerfile 에서 VOLUME /g6/data 라는 볼륨을 data 폴더만 연결을 해주셨는데.. 데이터 저장파일을
    백업하기 위해서는 필요하다고 생각을 하지만. 그냥 보기에는 g6를 바로 연결해 주심이 좋지 않을까 하는 생각이 들었습니다.
    예로.. .env 파일의 경우 셋팅 파일이 들어가 있는데 마지막 줄의 도메인 설정 부분을 해주는게 있더군요.

    # www.gnuboard.com 과 gnuboard.com 도메인은 서로 다른 도메인으로 인식합니다. 
    # 쿠키를 공유하려면 .gnuboard.com 과 같이 입력하세요.
    # 이곳에 입력하지 않으면 www 붙은 도메인과 그렇지 않은 도메인은 쿠키를 공유하지 못하므로 
    # 로그인이 풀릴 수 있습니다.
    COOKIE_DOMAIN=''
    

    이 것을 수정을 하기 위해서는 docker image 에 들어가서 수정을 하고 나와야 하지만 백업을 하더라도 data만 백업하니
    다시 구성시에 문제가 발생하지 않을까 하는 생각이 들었습니다.

    템플릿 수정도 그렇고..

    그래도 만들어주신 docker 이미지를 활용해서 우선 그누보드를 띄워두고 있습니다. 너무 감사합니다.
    게시판으로 이루어진 간단한 파일 저장용 웹 서비스가 필요해서 띄워놓긴 했는데 어떻게 활용할지 참 머리속이 복잡하긴 하네요 ㅎ. 제목이 특수문자가 많다보니 게시판을 이용해서 정리해야 하다보니 더욱.. 고통이 따르네요. ㅎ.

    이상입니다. :)

    자유로운 소통
  • 로그인

  • 계정이 없으신가요? 등록

  • 검색하려면 로그인하거나 등록하세요.
이용약관
개인정보 처리방침
  • 첫 게시물
    마지막 게시물
0
  • 홈
  • 카테고리
  • 최근
  • 태그
  • 인기
  • 사용자
  • 그룹