🙂 İNSANLARIN EN HAYIRLISI INSANLARA FAYDALI OLANDIR 🙂

Ramazan HABER / DOCKER / Docker Kullanımı 1

1-) DOCKER - Docker Kullanımı 1

 

 

piton ve react next.js için video link : https://www.youtube.com/watch?v=s8gIynLTNG8

next.js için video link : https://www.youtube.com/watch?v=rHyeVsjWpQo

 

1- Python için

 

1.1 requirements.txt

easyocr

Flask

mrz

opencv-python-headless

PassportEye

imutils

Pillow

mrz

numpy

flask-cors

 

1.2 Dockerfile

 

# syntax=docker/dockerfile:1

 

FROM python:3.11-bullseye

 

WORKDIR /identity-passport-ocr

 

COPY requirements.txt requirements.txt

RUN pip install -r requirements.txt

 

COPY . .

 

CMD [ "python", "-m" , "flask", "run", "--host=0.0.0.0"]

 

 

 

2- React Next.js için

 

2.1 Dockerfile

 

FROM node:18-alpine AS base

 

# Install dependencies only when needed

FROM base AS deps

# Check https://github.com/nodejs/docker-node/tree/b4117f9333da4138b03a546ec926ef50a31506c3#nodealpine to understand why libc6-compat might be needed.

RUN apk add --no-cache libc6-compat

WORKDIR /app

 

# Install dependencies based on the preferred package manager

COPY package.json yarn.lock* package-lock.json* pnpm-lock.yaml* ./

RUN \

  if [ -f yarn.lock ]; then yarn --frozen-lockfile; \

  elif [ -f package-lock.json ]; then npm ci; \

  elif [ -f pnpm-lock.yaml ]; then corepack enable pnpm && pnpm i --frozen-lockfile; \

  else echo "Lockfile not found." && exit 1; \

  fi

 

# Rebuild the source code only when needed

FROM base AS builder

WORKDIR /app

COPY --from=deps /app/node_modules ./node_modules

COPY . .

 

# Next.js collects completely anonymous telemetry data about general usage.

# Learn more here: https://nextjs.org/telemetry

# Uncomment the following line in case you want to disable telemetry during the build.

# ENV NEXT_TELEMETRY_DISABLED 1

 

RUN \

  if [ -f yarn.lock ]; then yarn run build; \

  elif [ -f package-lock.json ]; then npm run build; \

  elif [ -f pnpm-lock.yaml ]; then corepack enable pnpm && pnpm run build; \

  else echo "Lockfile not found." && exit 1; \

  fi

 

# Production image, copy all the files and run next

FROM base AS runner

WORKDIR /app

 

ENV NODE_ENV production

# Uncomment the following line in case you want to disable telemetry during runtime.

# ENV NEXT_TELEMETRY_DISABLED 1

 

RUN addgroup --system --gid 1001 nodejs

RUN adduser --system --uid 1001 nextjs

 

COPY --from=builder /app/public ./public

 

# Set the correct permission for prerender cache

RUN mkdir .next

RUN chown nextjs:nodejs .next

 

# Automatically leverage output traces to reduce image size

# https://nextjs.org/docs/advanced-features/output-file-tracing

COPY --from=builder --chown=nextjs:nodejs /app/.next/standalone ./

COPY --from=builder --chown=nextjs:nodejs /app/.next/static ./.next/static

 

USER nextjs

 

EXPOSE 3000

 

ENV PORT 3000

 

# server.js is created by next build from the standalone output

# https://nextjs.org/docs/pages/api-reference/next-config-js/output

CMD HOSTNAME="0.0.0.0" node server.js

 

 

2.2 docker-compose.yml

version: '3.9'

 

services:

  nextapp:

    container_name: rmos-admin-panel

    image: rmos-admin-panel

    build: .

    ports:

      - "3000:3000"

 

ÇALIŞTIRMA

piton için docker cmd:

C:\projeler\pitonocr>py -3 -m venv ven

docker info

docker login

docker build --tag identity-passport-ocr .

docker run -d -p 5000:5000 identity-passport-ocr

 

react için docker cmd:

C:\projeler\rmos-admin-panel> docker compose build

C:\projeler\rmos-admin-panel> docker compose up

 

 

DİĞER VİDEOLAR BAKMASANDA OLUR

https://drive.google.com/file/d/1cY3BeCYmyUYmc4YLxYkLA1DkPC3kS4HI/view?usp=sharing

https://drive.google.com/file/d/1q_zAIe62r-Ih7u5HEsgDBkVOnA7t6f7t/view?usp=sharing

 

powershell =  Enable-WindowsOptionalFeature -Online -FeatureName Microsoft-Windows-Subsystem-Linux

 

 

 

 

 

 2024 Eylül 05 Perşembe
 247