docker-compose.yml 에서 환경 변수로 필요 정보를 입력하도록 설정, 그에 따라 .env 생성
This commit is contained in:
27
.env.example
Normal file
27
.env.example
Normal file
@ -0,0 +1,27 @@
|
||||
# 게시판 설정
|
||||
BOARD_ID=news
|
||||
BOARD_CA_NAME=레이니데이
|
||||
BOARD_CONTENT=08:00 기상청 단기예보
|
||||
BOARD_MB_ID=user_id
|
||||
BOARD_NICKNAME=user_nickname
|
||||
|
||||
# 데이터베이스 설정
|
||||
DB_HOST=db.example.com
|
||||
DB_USER=db_username
|
||||
DB_PASSWORD=db_password
|
||||
DB_NAME=database_name
|
||||
DB_CHARSET=utf8mb4
|
||||
|
||||
# FTP 설정
|
||||
FTP_HOST=ftp.example.com
|
||||
FTP_USER=ftp_username
|
||||
FTP_PASSWORD=ftp_password
|
||||
FTP_UPLOAD_DIR=/data/file/news/
|
||||
|
||||
# 날씨 API 서비스 키
|
||||
SERVICE_KEY=your_weather_api_key_here
|
||||
|
||||
# Mattermost 알림 설정
|
||||
MATTERMOST_URL=https://mattermost.example.com
|
||||
MATTERMOST_TOKEN=your-personal-access-token
|
||||
MATTERMOST_CHANNEL_ID=channel_id
|
||||
3
.gitignore
vendored
3
.gitignore
vendored
@ -1,4 +1,5 @@
|
||||
config.py
|
||||
config.sample.py
|
||||
.env
|
||||
**/__pycache__/
|
||||
*.pyc
|
||||
naver_review/build/
|
||||
|
||||
62
autouploader/config.py
Normal file
62
autouploader/config.py
Normal file
@ -0,0 +1,62 @@
|
||||
import os
|
||||
from datetime import datetime
|
||||
|
||||
# .env 파일 로드 (python-dotenv 사용)
|
||||
try:
|
||||
from dotenv import load_dotenv
|
||||
load_dotenv()
|
||||
except ImportError:
|
||||
pass
|
||||
|
||||
TODAY = datetime.now().strftime('%Y%m%d')
|
||||
|
||||
# 게시판 설정
|
||||
MAIN = {
|
||||
'board': os.getenv('BOARD_ID', 'news'),
|
||||
'ca_name': os.getenv('BOARD_CA_NAME', '레이니데이'),
|
||||
'subject': '',
|
||||
'content': os.getenv('BOARD_CONTENT', '08:00 기상청 단기예보'),
|
||||
'mb_id': os.getenv('BOARD_MB_ID', 'user_id'),
|
||||
'nickname': os.getenv('BOARD_NICKNAME', 'user_nickname'),
|
||||
'file1': '',
|
||||
'file2': '',
|
||||
}
|
||||
|
||||
# 데이터베이스 설정
|
||||
DB_CONFIG = {
|
||||
'HOST': os.getenv('DB_HOST', 'localhost'),
|
||||
'USER': os.getenv('DB_USER', 'db_user'),
|
||||
'DBNAME': os.getenv('DB_NAME', 'database'),
|
||||
'PASS': os.getenv('DB_PASSWORD', 'password'),
|
||||
'CHARSET': os.getenv('DB_CHARSET', 'utf8mb4'),
|
||||
}
|
||||
|
||||
# FTP 설정
|
||||
FTP_CONFIG = {
|
||||
'HOST': os.getenv('FTP_HOST', 'ftp.example.com'),
|
||||
'USER': os.getenv('FTP_USER', 'ftp_user'),
|
||||
'PASS': os.getenv('FTP_PASSWORD', 'ftp_password'),
|
||||
'UPLOAD_DIR': os.getenv('FTP_UPLOAD_DIR', '/data/file/news/'),
|
||||
}
|
||||
|
||||
# 날씨 API 서비스 키
|
||||
serviceKey = os.getenv('SERVICE_KEY', '')
|
||||
|
||||
# Mattermost 설정
|
||||
MATTERMOST_CONFIG = {
|
||||
'URL': os.getenv('MATTERMOST_URL', ''),
|
||||
'TOKEN': os.getenv('MATTERMOST_TOKEN', ''),
|
||||
'CHANNEL_ID': os.getenv('MATTERMOST_CHANNEL_ID', ''),
|
||||
}
|
||||
|
||||
|
||||
def write_board():
|
||||
# ... existing code ...
|
||||
conn.close()
|
||||
return True, None # 명시적 반환 추가
|
||||
|
||||
def some_function():
|
||||
# ... existing code ...
|
||||
success, error = capture_image(capture_script, weather_file) # msg_sender 추가
|
||||
if not success:
|
||||
return
|
||||
@ -13,3 +13,4 @@ PyMySQL
|
||||
ftputil
|
||||
requests
|
||||
selenium
|
||||
python-dotenv
|
||||
|
||||
@ -8,6 +8,8 @@ services:
|
||||
volumes:
|
||||
- ./data:/data
|
||||
# - ./autouploader:/app
|
||||
env_file:
|
||||
- .env
|
||||
restart: unless-stopped
|
||||
|
||||
fg-webhook:
|
||||
|
||||
Reference in New Issue
Block a user