2020년 11월 1일

한대의 서버에 테슬라메이트 3개 가동하기(~n개까지 무한가능)

 결론은 서로 다른 디렉토리에서의 docker-compose.yml 파일을 쓰면 가능하다.



[1번]

/home/ID/models/docker-compose.yml 파일을 만든다.


[2번]

/home/ID/modelx/docker-compose.yml 파일을 만든다.


[3번]

/home/ID/model3/docker-compose.yml 파일을 만든다.


docker-compose.yml 파일은 아래 색칠 부분만 각자 다르게 설정해야한다. 어떤값이든 상관없지만. 겹치지 않도록 9개의 서로다른 포트번호를 쓴다.  4000 ~ 60000 번 사이는 아무거나 상관없다.(물론 방화벽에서 사용하는 포트는 열어줘야하겠다)

docker-compose.yml (예시) 분홍색숫자 3개가 서버포트이며, 각각의 설정파일마다 서로 다르게 해야한다.

version: "3"

services:
  teslamate:
    image: teslamate/teslamate:latest
    restart: always
    environment:
      - DATABASE_USER=teslamate
      - DATABASE_PASS=secret
      - DATABASE_NAME=teslamate
      - DATABASE_HOST=database
      - MQTT_HOST=mosquitto
    ports:
      - 4000:4000
    volumes:
      - ./import:/opt/app/import
    cap_drop:
      - all

  database:
    image: postgres:13
    restart: always
    environment:
      - POSTGRES_USER=teslamate
      - POSTGRES_PASSWORD=secret
      - POSTGRES_DB=teslamate
    volumes:
      - teslamate-db:/var/lib/postgresql/data

  grafana:
    image: teslamate/grafana:latest
    restart: always
    environment:
      - DATABASE_USER=teslamate
      - DATABASE_PASS=secret
      - DATABASE_NAME=teslamate
      - DATABASE_HOST=database
    ports:
      - 3000:3000
    volumes:
      - teslamate-grafana-data:/var/lib/grafana

  mosquitto:
    image: eclipse-mosquitto:1.6
    restart: always
    ports:
      - 1883:1883
    volumes:
      - mosquitto-conf:/mosquitto/config
      - mosquitto-data:/mosquitto/data

volumes:
  teslamate-db:
  teslamate-grafana-data:
  mosquitto-conf:
  mosquitto-data:


예를들어  5000, 5001, 5002  로 했을 경우

http://내서버IP:5000   메인화면

http://내서버IP:5001   그라파나 데이터 표 분석화면

5002 는 데이터수집용이며 따로 사용되지는 않음.



이제 관리자 권한일 경우 아래와같이 바로실행 가능하겠다.

[models]

# cd /home/ID/models

$ docker-compose -f /home/ID/models/docker-compose.yml up -d


[modelx]

# cd /home/ID/modelx

$ docker-compose -f /home/ID/modelx/docker-compose.yml up -d


[model3]

# cd /home/ID/model3

$ docker-compose -f /home/ID/model3/docker-compose.yml up -d


백업이나 복원시에도 -f /설정파일경로  는 반드시 추가해주고 그 뒤로 나머지 명령어를 적어야하겠다.

추천 게시물

Elisabeth Chaplin (1890~1982)

 프랑스의 예술가 집안에서 태어난 '엘리자베스 채플린'은, 10살 때 가족과 함께 이탈리아로 이사를 갔습니다. 우피치미술관을 방문하고 나서 미술에 푹 빠져버렸죠.  정식교육을 받지는 않았지만 그녀는 우피치미술관에서 명작들을 보고 따라그리...