java.net.UnknownHostException: db
version: "3"
services:
app:
build:
context: .
dockerfile: app.Dockerfile
environment:
- SPRING_DATASOURCE_URL=jdbc:postgresql://db:5432/javacode
- SPRING_DATASOURCE_USERNAME=postgres
- SPRING_DATASOURCE_PASSWORD=postgres
ports:
- "8080:8080"
networks:
app:
# command: ["./wait-for-it.sh", "db:5432", "java", "-jar", "/app/app.war"]
db:
build:
context: .
dockerfile: postgreSQL.Dockerfile
container_name: db
environment:
POSTGRES_DB: javacode
POSTGRES_USER: postgres
POSTGRES_PASSWORD: postgres
ports:
- "5432:5432"
volumes:
- ./db/initDB.sql:/docker-entrypoint-initdb.d/initDB.sql
networks:
app:
networks:
app:
driver: bridge
В Node.js сервисы обычно запускают в Docker, я слышал что в Java для этого используют Tomcat, в чем разница между ними? (или это вообще разные вещи?)
В Node.js для запуска сервера обычно используют express.js, а что для этого используется в Java? (Servlet, Spring или что-то еще?)
Допустим я сделал сервер на Servlet, как запускать это в docker контейнере?
Если я запущу 10 Java сервисов в отдельных Docker контейнерах, в каждом из них будет отдельный экземпляр JRE\JDK?
Преимущество Java мискросервисов перед Node.js? (или наоборот)
Cannot connect to the Docker daemon at unix:///var/run/docker.sock. Is the docker daemon running?
docker compose -f docker-compose.yml up -d
version: '3.8'
services:
postgres:
container_name: postgres
image: postgres
restart: always
environment:
POSTGRES_USER: postgres
POSTGRES_PASSWORD: postgres
PGDATA: /data/postgres
ports:
- "5432:5432"
volumes:
- postgres:/data/postgres
pgadmin:
depends_on:
- postgres
container_name: pgadmin4
image: dpage/pgadmin4
restart: always
environment:
PGADMIN_DEFAULT_EMAIL: mail@example.com
PGADMIN_DEFAULT_PASSWORD: postgres
ports:
- "5050:80"
volumes:
- pgadmin:/root/.pgadmin
networks:
postgres:
driver: bridge
volumes:
postgres:
pgadmin:
version: '3.8'
services:
mysql:
image: mysql:latest
container_name: mysql
restart: always
ports:
- '3306:3306'
environment:
MYSQL_ROOT_PASSWORD: mysql
phpmyadmin:
depends_on:
- mysql
image: phpmyadmin/phpmyadmin
container_name: phpmyadmin
restart: always
ports:
- '5051:80'
environment:
- PMA_HOST=mysql
- UPLOAD_LIMIT=1024M
- MEMORY_LIMIT=1024M
- MAX_EXECUTION_TIME=300version: '3.8'
services:
mysql:
image: mysql:latest
container_name: mysql
restart: always
ports:
- '3306:3306'
environment:
MYSQL_ROOT_PASSWORD: mysql
phpmyadmin:
depends_on:
- mysql
image: phpmyadmin/phpmyadmin
container_name: phpmyadmin
restart: always
ports:
- '5051:80'
environment:
- PMA_HOST=mysql
- UPLOAD_LIMIT=1024M
- MEMORY_LIMIT=1024M
- MAX_EXECUTION_TIME=300
version: '3.8'
services:
mariadb:
image: mariadb:latest
container_name: mariadb
restart: always
ports:
- '3306:3306'
environment:
MYSQL_ROOT_PASSWORD: mariadb
phpmyadmin:
depends_on:
- mariadb
image: phpmyadmin/phpmyadmin
container_name: phpmyadmin
restart: always
ports:
- '5051:80'
environment:
- PMA_HOST=mariadb
- UPLOAD_LIMIT=1024Mversion: '3.8'
services:
mariadb:
image: mariadb:latest
container_name: mariadb
restart: always
ports:
- '3306:3306'
environment:
MYSQL_ROOT_PASSWORD: mariadb
phpmyadmin:
depends_on:
- mariadb
image: phpmyadmin/phpmyadmin
container_name: phpmyadmin
restart: always
ports:
- '5051:80'
environment:
- PMA_HOST=mariadb
- UPLOAD_LIMIT=1024M
- MEMORY_LIMIT=1024M
- MAX_EXECUTION_TIME=300
- MEMORY_LIMIT=1024M
- MAX_EXECUTION_TIME=300
Есть сервер ubuntu с установленным на нем Docker
подразумеваю что буду использовать разные контейнеры для бд, и самого сайта, и соответственно docker compose
как работать с удаленным сервером, как деплоить проект
Можно ли подключить как то докер к intellij?
Да и в целом какие есть нормальные гайды и советы)
то есть на вирт машине запустить всё так же как я запускаю у себя на локалке через docker-compose ну или kubernetes?