Docker로 인터넷 속도측정 사이트 만들기 LibreSpeed
안녕하세요. 달소입니다.
오늘도 신기한 오픈소스 툴을 가지고왔습니다 ㅎㅎ 바로 Librespeed인데요.
다들 집에서 인터넷 속도측정을 해보셨겠죠? IT를 좋아하시는분들이라면 목숨거실 벤치마크인데
인터넷 속도측정의 경우 보통 속도측정 사이트와 우리집간의 업로드/다운로드 속도를 비교해서 알려줍니다.
LibreSpeed 이 속도측정사이트를 구축하기 쉽게 도와줍니다.
사실 nginx 웹서버만 있으면 github에 있는 소스만 가져와도 쉽게 만들지만 여기서는 Docker를 사용해서 한번에 쉽게 설치해보겠습니다.
설치환경
여기서는 제 환경이지만 x86/arm 모두 지원하기때문에 헤놀로지,라즈베리파이등 모두 설치 가능합니다.
Ubuntu 20.04 LTS
docker 20.10.12
docker compose v2.2.2 // 1버전도 상관 X
추가적으로 데이터를 저장할 볼륨만 미리 생성해보겠습니다.
mkdir -p /data/librespeed/config/
LibreSpeed 컨테이너 생성하기
사용할 이미지는 Linuxserver의 librespeed 입니다 ㅎ
기본적으로 Librespeed도 DB를 가지고있으며 가벼운 sqlite 부터 mysql, postgresql 까지 모두 지원하며
여기서는 편의를 위해서 sqlite를 사용할텐데 입맞에 맞춰서 mysql,postgresql을 사용하시면 됩니다.(옵션값 변경 필요)
vi /data/librespeed/docker-compose.yml
version: "2.1"
services:
librespeed:
image: lscr.io/linuxserver/librespeed
container_name: librespeed
environment:
- PUID=1000
- PGID=1000
- TZ=Asia/Seoul
- PASSWORD=PASSWORD
volumes:
- /data/librespeed/config:/config
ports:
- 8080:80
restart: unless-stopped
요렇게 다 하고나면 컨테이너 생성이 완료되고 ip:8080 포트로 접근하시면 됩니다.
여기서 Start를 누르면 서버에 대한 속도 측정이 가능해집니다.
아래 결과들은 하나는 내부 -> 내부(wifi) 다이렉트 , 하나는 내부 -> 공인IP(내부) 가 되겠습니다.
내부 -> 내부는 확실히 내부망 속도를 거의 다 뽑아주는거 같고
내부 -> 공인(내부) 또한 제 인터넷 속도(100M)를 다 뽑아주는듯합니다
config 폴더로 가면 아래처럼 설정파일들이 있기때문에 로고나 html정도는 입맛에 맞게 수정하시면 될듯합니다.
여러모로 신기한 툴이였습니다 ㅎㅎ
한번씩 설치해보세요~~
각 환경변수 및 다른 DB를 사용하실 분들은 아래 공식 허브이미지를 참고하시면 되겠습니다.
https://hub.docker.com/r/linuxserver/librespeed