Post #2618
1.81K


Архитектура микросервисов
(продолжение в следующем посте)
(продолжение в следующем посте)
ME Showing posts older than #2620 · Back to latest




import Android
@_cdecl("Java_org_example_helloswift_MainActivity_stringFromSwift")
public func MainActivity_stringFromSwift(env: UnsafeMutablePointer<JNIEnv?>, clazz: jclass) -> jstring {
let hello = ["Hello", "from", "Swift", "❤️"].joined(separator: " ")
return hello.withCString { ptr in
env.pointee!.pointee.NewStringUTF(env, ptr)!
}
}








package.json или requirements.txt.Dockerfile — это шаблон, определяющий, как будет собираться ваш образ.# Использование базового образа
FROM node:20
# Установка рабочего каталога
WORKDIR /app
# Копирование файлов проекта
COPY . .
# Установка зависимостей
RUN npm install
# Открытие порта приложения
EXPOSE 3000
# Команда для запуска приложения
CMD ["npm", "start"]
docker build -t myapp:latest .
-t присваивает вашему образу имя и версию. Docker считывает инструкции из Dockerfile и создаёт повторно используемый образ.docker run -d -p 3000:3000 myapp:latest
-d запускает контейнер в фоновом режиме.-p сопоставляет порт контейнера с портом вашего локального компьютера. Приложение теперь доступно локально по адресу localhost:3000.docker ps
docker stop <id_контейнера>
docker rm <id_контейнера>
docker rmi myapp:latest
docker-compose.yml.version: '3'
services:
app:
build: .
ports:
- "3000:3000"
db:
image: mongo
ports:
- "27017:27017"
docker-compose up -d
docker login
docker tag myapp username/myapp:v1
docker push username/myapp:v1