(광고)같은 유튜브 다운로더, Tube Archivist
요즘 따라 유튜브 다운로더가 밋밋하게 느껴지지 않습니까?
유튜브 영상을 좀 더 계획적으로 관리하고 싶으시다고요?
바로 그럴 때! Tube Archivist가 필요합니다!
타 컨테이너들과 비교하지 마십시요!
Tube Archivist 는 유튜브 다운로더에 필요한 모든 기능을 갖췄습니다!
로그인 기능!
빠른 다운로드!
다운로드 받은 영상을 바로 볼 수 있는 기능까지!
이 모든 구성을 단 613MB에 다운로드 받을 수 있는 절호의 기회!
그게 끝이 아닙니다!
아직도 유튜브 자막 사이트를 따로 찾으십니까?
이제는 그런 노동에서 고생 끝!
자막 자동 다운로드 까지 지원해주는 Tube Archivist!
(en:영어, ko:한국어, ja:일본어 등등... 단, 본 컨테이너는 바로보기 기능에서 자막을 지원하지는 않습니다)
또 있습니다!
Tube Archivist 는 사용자분의 부지런함을 요구하지 않도록 스케쥴 기능을 따로 제공합니다! (단, 본 컨테이너는 사용자의 잘못된 설정에 의한 오류를 책임지지 않으니 유의하시기 바랍니다)
획기적인 기능을 한방 팩으로 만나볼 수 있는 마지막 기회!
613MB! 613MB!
Tube Archivist, 지금 바로 만나보세요!
Q. 왜 컨셉이 이따구인가요?
A. 폐관숙제로 인해 심신이 피폐해졌습니다. 이 모든 것은 1일1숙제를 안 하신 달소님 때문입니다.
Tube Archivist의 docker-compose는 다음과 같이 해주시면 됩니다.
version: '3.3'
services:
tubearchivist:
container_name: tubearchivist
restart: always
image: bbilly1/tubearchivist:latest
ports:
- {원하는포트}:8000
volumes:
- {다운로드받을 폴더}:/youtube
- cache:/cache
environment:
- ES_URL=http://archivist-es:9200 # needs protocol e.g. http and port
- REDIS_HOST=archivist-redis # don't add protocol
- HOST_UID=1000
- HOST_GID=1000
- TA_USERNAME={초기ID} # your initial TA credentials
- TA_PASSWORD={초기 비번} # your initial TA credentials
- ELASTIC_PASSWORD={Elasticsearch비번} # set password for Elasticsearch
- TZ=Asia/Seoul # set your time zone
depends_on:
- archivist-es
- archivist-redis
archivist-redis:
image: redislabs/rejson:latest # for arm64 use bbilly1/rejson
container_name: archivist-redis
restart: always
expose:
- "6379"
volumes:
- redis:/data
depends_on:
- archivist-es
archivist-es:
image: bbilly1/tubearchivist-es # only for amd64, or use official es 7.17.3
container_name: archivist-es
restart: always
environment:
- "xpack.security.enabled=true"
- "ELASTIC_PASSWORD={Elasticsearch비번(위와 동일)}" # matching Elasticsearch password
- "discovery.type=single-node"
- "ES_JAVA_OPTS=-Xms512m -Xmx512m"
ulimits:
memlock:
soft: -1
hard: -1
volumes:
- es:/usr/share/elasticsearch/data # check for permission error when using bind mount, see readme
expose:
- "9200"
volumes:
cache:
redis:
es:
여기서
volumes:
cache:
redis:
es:
라는 부분이 있는데 이것은 volume container를 설정해주는 것입니다.
이렇게 해주면 이 폴더들은 "/var/lib/docker/volumes/"아래에 들어가게 됩니다.
이 부분을 제거해주는 것이 조금 귀찮은데 컨테이너 삭제 후 "docker volume prune"을 이용하시면 편합니다. (단, 이 방법은 다른 미사용 docker volume에도 영향을 주니 한 번 더 고민해보고 쓰시기 바랍니다. 일부러 잠시 삭제해둔 컨테이너가 있다면 그 컨테이너의 volume container도 같이 삭제 됩니다. 물론 보통은 안 쓰는 건 안 쓰긴 하나 확신이 들 때 사용하시기 바랍니다.)
+) 초기 설치 시 도커 설치 후 웹 화면 나올 때까지 시간이 조금 걸립니다. 여유를 가지고 설치하시기를 권장드립니다.
※ ExpBox님의 댓글에 따라 중복부분이 삭제됐습니다.
이하는 리버스 프록시 유저를 위한 팁입니다.
일반적인 방법으로 리버스프록시를 적용하면 로그인 시
이런 오류를 내뿜습니다.
본 오류는 Django 때문에 발생하는 것으로 추정되는데 정확한 이유는 모르겠으나 해결 방법은 다음과 같습니다. (이 방법은 Django를 기반으로 하는 모든 컨테이너에 유효한 것으로 보이며 linkding이라는 컨테이너에도 적용됩니다.)
nginx 기준으로 "
proxy_set_header X-Forwarded-Proto $scheme;
"를 proxy_pass 아래에 적어주시면 됩니다.
전체적인 구성은 다음과 같습니다. (저는 웹소켓 기능까지 넣었으나 기본적인 방법은 동일합니다.)
server {
listen 80;
server_name {서버DNS};
location / {
proxy_pass http://{내부IP}:{포트번호};
proxy_http_version 1.1;
proxy_set_header Upgrade $http_upgrade;
proxy_set_header Connection "upgrade";
proxy_set_header Host $host;
proxy_set_header X-Forwarded-Proto $scheme; #가장 중요
}
}
컨셉충이 되보려는 것도 어려운 일임을 새삼 깨닫습니다. 달소님의 1일1숙제를 기원합니다.
제가 본 다운로더중에 제일깔끔하네요! 유툽 다운을 따로 안하지만 설정해놓고 싶을 정도로 매력적이네요!
상상해봄직한 기능을 거의 구현해놨더군요
다운로드 한 영상의 채널마다 따로 폴더를 만들어서 저장하고 채널들도 따로 보여주는 기능도 있습니다.
관상용으로도 실사용으로도 괜찮은 컨테이너 같습니다
아래있는 커맨드를 npm으로 쓰는 방버을 모르겠습니다 달소님 도와주세요 :(((
Advanced에 아래부분만 넣으시면될듯합니다
location / {
proxy_pass http://{내부IP}:{포트번호};
proxy_http_version 1.1;
proxy_set_header Upgrade $http_upgrade;
proxy_set_header Connection "upgrade";
proxy_set_header Host $host;
proxy_set_header X-Forwarded-Proto $scheme; #가장 중요
}
감사합니다!
오..요것도 나중에설치할것...메모...
감사합니다!
유용한 도커생활 기원드립니다
중간에 docker-compose 문구 중에
archivist-es:
image: bbilly1/tubearchivist-es # only for amd64, or use official es 7.17.3
container_name: archivist-es
가 중복으로 들어가는 부분이 있습니다. 설치하시는분들은 삭제하시거나 도커허브 혹은 깃허브 레포를 확인하시고 설치하시면 될 것 같습니다.
확인 감사합니다. 즉시 수정하겠습니다.
제가 복사하는 과정에서 문제가 있었나보군요;;
그런데 es가 elastic인것 같은데 혹시 무슨 역할을 하시는지 아시는가요? X86 이미지만 도커 허브에 있어서 ARM에 쓸 수가 없는데 없어도 작동 되려나 모르겠습니다.
저도 정확히는 모르나 검색해보니 데이터 검색 및 집계 얘기가 나오는 걸 보니 redis 데이터베이스를 기반으로 데이터 처리하는 역할이 아닌가 싶습니다.
arm에 대해서는 라즈베리파이에 한 번 설치해보고 다시 댓을 달아보겠습니다(좀 오래 걸릴 수 있습니다)
확인해본 결과 메뉴얼을 그대로만 하면 redis랑 elasticsearch가 작동하지 않습니다.
일단 메뉴얼의 주석에 쓰여진 대로
redis는 bbilly1/rejson로, elasticsearch는 elasticsearch:7.17.3으로 교체해본 결과 elasticsearch만 계속 실패하고 있습니다.
/usr/share/elasticsearch/bin/elasticsearch-env: line 83: 32 Aborted "$JAVA" "$XSHARE" -cp "$ES_CLASSPATH" org.elasticsearch.tools.java_version_checker.JavaVersionChecker
로그가 뜨는 것을 보아 중간에 뭔가가 계속 안되는 것 같은데 구체적인 이유는 미해결중입니다...
저도 라즈베리파이4에 올려보니 동일한 증상입니다. 그래서 elasticsearch:7.17.3 로 설치 후 바인딩 볼륨을 매칭하고 한번 실행한 뒤 그 볼륨의 권한을 chmod 777로 맞추니 elasticsearch 까지는 어찌 됐습니다. 하지만 TA의 로그를 본 바 no python application found, check your startup log for errors가 뜨면서 ip:8000으로 접속하면 Internal Server Error가 뜨더군요. 이 경우는 레포의 DockerFile에서 문제가 난건지 어떻게 된건지는 모르겠습니다.
일단 성공한 것 같아 보입니다. 확인 후 따로 글 올리겠습니다.
ㅋㅋㅋ 다시봐도 글을 너무 잘쓰셨네요..
영업에 소질이..!!
정신피폐해진 채로 작성했습니다 ㅠㅠ
달소님의 1일1숙제면 좀 완화될 듯 한데 쉽지 않군요
후후.. 이제 아이디어도 모자랍니다.. 이것저것하느라 떠오르는 생각이없네요~
유튜브도 병행하시면 없던 아이디어도 짜낼 수 있을 듯 합니다
서(버)포(럼)터(줏대감)으로 가시죠 ㄱㄱ
오..ㅋㅋ 서포터 어감이 좋네요.. 역시 아이디어뱅크..
유튜브를하기에는 여러가지 능력이 모자라기때문에.. 쿨럭..
시작은 웅장할 필요는 없죠
아마 서버 조립장면만 올려도 볼 사람은 볼 겁니다. 컴퓨터 조립장면을 거치대만 사서 (침 튈테니 마스크끼고) 설명 약간만 곁들여 영상 찍어서 그대로 올려도 수요가 꽤 있으리라 봅니다.
아니면 가지고 계신 시놀로지/헤놀로지를 하드디스크 넣는 장면이나 레이드 설명부터 하시면 역시 수요가 있으리라 생각합니다.
shorts 같은 영상은 시간 부담이 없으면서 조회수 올리기 좋으니 서버 간단 팁부터 시작하시면 될 듯 합니다. 서버 오류난 장면을 (본인에게는 아니겠지만) 유머처럼 찍어서 올릴 수도 있겠죠
왜 이렇게 열정적으로 설명하냐면 제가 필요한 영상이기 때문이죠... 더 노력하시죠 달소님
cmt alert