mirror of
				https://github.com/Toumash/mlflow-docker
				synced 2025-11-04 07:09:22 +01:00 
			
		
		
		
	provide caddyfile basic auth for the mlflow
This commit is contained in:
		
							
								
								
									
										22
									
								
								Caddyfile
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										22
									
								
								Caddyfile
									
									
									
									
									
										Normal file
									
								
							@@ -0,0 +1,22 @@
 | 
			
		||||
# Minio Console
 | 
			
		||||
s3.localhost:9001 {
 | 
			
		||||
    handle_path /* {
 | 
			
		||||
        reverse_proxy s3:9001
 | 
			
		||||
    }
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
# Minio API
 | 
			
		||||
s3.localhost:9000 {
 | 
			
		||||
    handle_path /* {
 | 
			
		||||
        reverse_proxy s3:9000
 | 
			
		||||
    }
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
mlflow.localhost {
 | 
			
		||||
    basicauth /* {
 | 
			
		||||
	    root JDJhJDEwJEVCNmdaNEg2Ti5iejRMYkF3MFZhZ3VtV3E1SzBWZEZ5Q3VWc0tzOEJwZE9TaFlZdEVkZDhX # root hiccup
 | 
			
		||||
    }
 | 
			
		||||
    handle_path /* {
 | 
			
		||||
        reverse_proxy mlflow:5000
 | 
			
		||||
    }
 | 
			
		||||
}
 | 
			
		||||
@@ -1,19 +1,35 @@
 | 
			
		||||
version: '3.2'
 | 
			
		||||
services:
 | 
			
		||||
  caddy:
 | 
			
		||||
    image: caddy:2-alpine
 | 
			
		||||
    container_name: caddy
 | 
			
		||||
    volumes:
 | 
			
		||||
      - ./Caddyfile:/etc/caddy/Caddyfile
 | 
			
		||||
      - /caddy/data:/data
 | 
			
		||||
      - /caddy/config:/config
 | 
			
		||||
    ports:
 | 
			
		||||
      - 80:80
 | 
			
		||||
      - 443:443
 | 
			
		||||
      - 9000:9000
 | 
			
		||||
      - 9001:9001
 | 
			
		||||
    restart: unless-stopped
 | 
			
		||||
  s3:
 | 
			
		||||
    image: minio/minio:RELEASE.2021-06-14T01-29-23Z
 | 
			
		||||
    restart: always
 | 
			
		||||
    image: minio/minio:latest
 | 
			
		||||
    container_name: aws-s3
 | 
			
		||||
    ports:
 | 
			
		||||
      - 9000:9000
 | 
			
		||||
      - 9000
 | 
			
		||||
      - 9001
 | 
			
		||||
    environment:
 | 
			
		||||
      - MINIO_ACCESS_KEY=${AWS_ACCESS_KEY_ID}
 | 
			
		||||
      - MINIO_SECRET_KEY=${AWS_SECRET_ACCESS_KEY}
 | 
			
		||||
    command: 
 | 
			
		||||
      server /date
 | 
			
		||||
    networks:
 | 
			
		||||
      - A
 | 
			
		||||
      - MINIO_ROOT_USER=${AWS_ACCESS_KEY_ID}
 | 
			
		||||
      - MINIO_ROOT_PASSWORD=${AWS_SECRET_ACCESS_KEY}
 | 
			
		||||
    command:
 | 
			
		||||
      server /date --console-address ":9001"
 | 
			
		||||
    volumes:
 | 
			
		||||
      - ./s3:/date
 | 
			
		||||
    networks:
 | 
			
		||||
      - default
 | 
			
		||||
      - proxy-net
 | 
			
		||||
  db:
 | 
			
		||||
      restart: always
 | 
			
		||||
      image: mysql/mysql-server:5.7.28
 | 
			
		||||
@@ -28,8 +44,9 @@ services:
 | 
			
		||||
      volumes:
 | 
			
		||||
          - ./dbdata:/var/lib/mysql
 | 
			
		||||
      networks:
 | 
			
		||||
            - A
 | 
			
		||||
          - default
 | 
			
		||||
  mlflow:
 | 
			
		||||
      restart: always
 | 
			
		||||
      container_name: tracker_mlflow
 | 
			
		||||
      image: tracker_ml
 | 
			
		||||
      build:
 | 
			
		||||
@@ -37,14 +54,16 @@ services:
 | 
			
		||||
          dockerfile: Dockerfile
 | 
			
		||||
      ports:
 | 
			
		||||
          - "5000:5000"
 | 
			
		||||
      environment: 
 | 
			
		||||
      environment:
 | 
			
		||||
          - AWS_ACCESS_KEY_ID=${AWS_ACCESS_KEY_ID}
 | 
			
		||||
          - AWS_SECRET_ACCESS_KEY=${AWS_SECRET_ACCESS_KEY}
 | 
			
		||||
          - AWS_DEFAULT_REGION=${AWS_REGION}
 | 
			
		||||
          - MLFLOW_S3_ENDPOINT_URL=http://s3:9000
 | 
			
		||||
      entrypoint: mlflow server --backend-store-uri mysql+pymysql://${MYSQL_USER}:${MYSQL_PASSWORD}@db:3306/${MYSQL_DATABASE} --default-artifact-root s3://${AWS_BUCKET_NAME}/ -h 0.0.0.0
 | 
			
		||||
      networks:
 | 
			
		||||
          - A
 | 
			
		||||
      entrypoint: ./wait-for-it.sh db:3306 -t 90 -- mlflow server --backend-store-uri mysql+pymysql://${MYSQL_USER}:${MYSQL_PASSWORD}@db:3306/${MYSQL_DATABASE} --default-artifact-root s3://${AWS_BUCKET_NAME}/ -h 0.0.0.0
 | 
			
		||||
          - proxy-net
 | 
			
		||||
          - default
 | 
			
		||||
 | 
			
		||||
networks:
 | 
			
		||||
    A:
 | 
			
		||||
        driver: bridge
 | 
			
		||||
  default:
 | 
			
		||||
  proxy-net:
 | 
			
		||||
 
 | 
			
		||||
@@ -5,7 +5,7 @@ from mlflow import mlflow,log_metric, log_param, log_artifacts
 | 
			
		||||
 | 
			
		||||
if __name__ == "__main__":
 | 
			
		||||
    with mlflow.start_run() as run:
 | 
			
		||||
        mlflow.set_tracking_uri('http://localhost:5000')
 | 
			
		||||
        mlflow.set_tracking_uri('https://mlflow.localhost')
 | 
			
		||||
        print("Running mlflow_tracking.py")
 | 
			
		||||
 | 
			
		||||
        log_param("param1", randint(0, 100))
 | 
			
		||||
 
 | 
			
		||||
		Reference in New Issue
	
	Block a user