Käynnistä koko AgentArmy-alusta Dockerilla yhdellä komennolla! 🐳
macOS:
brew install docker docker-composeLinux:
curl -fsSL https://get.docker.com -o get-docker.sh
sudo sh get-docker.sh
sudo usermod -aG docker $USERWindows: Lataa Docker Desktop: https://www.docker.com/products/docker-desktop
docker --version
docker-compose --versioncd agenttiarmeija-platform
cp backend/.env.example .env# Database
DB_PASSWORD=your-secure-password
# Security
JWT_SECRET_KEY=your-super-secret-key-change-this
# AI APIs
QWEN_API_KEY=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
MINIMAX_API_KEY=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
# Stripe (optional)
STRIPE_SECRET_KEY=sk_test_...
STRIPE_WEBHOOK_SECRET=whsec_...
# Email (optional)
SMTP_HOST=smtp.gmail.com
SMTP_PORT=587
SMTP_USER=your-email@gmail.com
SMTP_PASSWORD=your-app-password
FROM_EMAIL=noreply@agenttiarmeija.com
# Frontend
FRONTEND_URL=http://localhost:3000
VITE_API_URL=http://localhost:8000docker-compose up -dTämä käynnistää:
- PostgreSQL (portti 5432)
- Backend API (portti 8000)
- Frontend (portti 3000)
docker-compose psPitäisi näyttää:
NAME STATUS
agenttiarmeija-db Up (healthy)
agenttiarmeija-backend Up
agenttiarmeija-frontend Up
docker-compose exec backend python load_course_content.py- Frontend: http://localhost:3000
- Backend API: http://localhost:8000
- API Docs: http://localhost:8000/docs
docker-compose up -ddocker-compose downdocker-compose down -v# Kaikki palvelut
docker-compose logs -f
# Vain backend
docker-compose logs -f backend
# Vain frontend
docker-compose logs -f frontend
# Vain tietokanta
docker-compose logs -f postgresdocker-compose restart backend
docker-compose restart frontenddocker-compose build
docker-compose up -d# Backend
docker-compose exec backend python load_course_content.py
docker-compose exec backend python -c "print('Hello')"
# Frontend
docker-compose exec frontend npm run build
# Tietokanta
docker-compose exec postgres psql -U agenttiarmeija -d agenttiarmeijadocker-compose exec postgres psql -U agenttiarmeija -d agenttiarmeija-- Listaa taulut
\dt
-- Katso käyttäjiä
SELECT * FROM users;
-- Katso kursseja
SELECT * FROM courses;
-- Katso edistymistä
SELECT * FROM progress;
-- Poistu
\qdocker-compose exec postgres pg_dump -U agenttiarmeija agenttiarmeija > backup.sqlcat backup.sql | docker-compose exec -T postgres psql -U agenttiarmeija -d agenttiarmeija# Tarkista lokit
docker-compose logs backend
# Käynnistä uudelleen
docker-compose restart backend# Tarkista että tietokanta on käynnissä
docker-compose ps postgres
# Tarkista tietokantalokit
docker-compose logs postgres
# Käynnistä tietokanta uudelleen
docker-compose restart postgres# Tarkista että backend pyörii
curl http://localhost:8000/health
# Tarkista ympäristömuuttujat
docker-compose exec frontend env | grep VITE_API_URL# Tarkista mikä käyttää porttia
lsof -i :8000
lsof -i :3000
lsof -i :5432
# Vaihda portti docker-compose.yml:ssä
# Esim: "8001:8000" käyttää porttia 8001 hostissa# Pysäytä palvelut
docker-compose down -v
# Poista kaikki kontit ja imaget
docker system prune -a
# Käynnistä uudelleen
docker-compose up -d --build# Poista --reload backendistä
command: uvicorn main_api:app --host 0.0.0.0 --port 8000
# Poista volume-mountit
# volumes:
# - ./backend:/appdocker-compose builddocker-compose up -dserver {
listen 80;
server_name agenttiarmeija.com;
location / {
proxy_pass http://localhost:3000;
proxy_set_header Host $host;
proxy_set_header X-Real-IP $remote_addr;
}
location /api {
proxy_pass http://localhost:8000;
proxy_set_header Host $host;
proxy_set_header X-Real-IP $remote_addr;
}
}docker statsdocker-compose psdocker system df# Luo vahvat salasanat
openssl rand -base64 32
# Päivitä .env-tiedosto
DB_PASSWORD=<strong-password>
JWT_SECRET_KEY=<strong-secret># Asenna Let's Encrypt
sudo apt install certbot python3-certbot-nginx
# Hanki sertifikaatti
sudo certbot --nginx -d agenttiarmeija.com# docker-compose.yml
postgres:
ports:
- "127.0.0.1:5432:5432" # Vain localhostOnnea Dockerin käyttöön! 🐳