Sapper × Go (Echo) × Aufbau einer Docker-Entwicklungsumgebung

Einführung

Vorderseite: Svelte.js (Sapper), API: Go (Echo) Ich wollte eine App erstellen Mit Docker erstellt.

Wie weit zu tun

Bis zu dem Punkt, an dem Sapper, Echo mit einem lokalen Host verbunden werden kann

Anfängliche Verzeichnisstruktur

Beim Erstellen dieser Umgebung Erstellen mit "Vue.js + Go language + Docker"! Implementierung der Bild-Upload-Funktion zum Anfassen wurde als Referenz verwendet.

Einfach und leicht zu verstehen.


.
├── docker-compose.yml
└── server

Aufbau einer Entwicklungsumgebung für Sapper


npx degit "sveltejs/sapper-template#rollup" client

cd client
npm install
touch Dockerfile_develop

Obwohl es sich um eine Docker-Datei handelt, möchte ich in meinem Fall eine Docker-Datei für die Produktion vorbereiten. Deshalb habe ich sie "Dockerfile_develop" genannt. Wenn Sie es nicht teilen müssen oder wenn es in einen mehrstufigen Build zu passen scheint, können Sie einen verwenden.

Dockerfile

FROM mhart/alpine-node:12

WORKDIR /app
COPY package.json package-lock.json ./

RUN npm ci

ENV HOST=0.0.0.0
EXPOSE 3000

docker-compose.yml

version: '3.8'

services:
  client:
    env_file: .env
    build: 
      context: ./client
      dockerfile: Dockerfile_${DOCKER_ENV} #Löschen Sie diese Zeile, wenn Sie sie nicht benötigen
    ports:
      - 3000:3000
    tty: true
    volumes:
      - ./client:/app
    command: npm run dev
touch .env
vim .env
DOCKER_ENV=develop

Mal sehen, ob Sapper zu diesem Zeitpunkt startet

docker-compose up --build

Go (Echo) Entwicklungsumgebung Konstruktion

cd server
touch Dockerfile
touch main.go

Dockerfile

FROM golang:1.15.2-alpine


WORKDIR /go/src/api
ADD .  /go/src/api
ENV GO111MODULE=off

RUN apk update && apk add curl git

main.go

package main

import (
  "net/http"
  "github.com/labstack/echo"
)

func main() {
  e := echo.New()
  e.GET("/", func(c echo.Context) error {
    return c.String(http.StatusOK, "Hello, World")
  })
  e.Logger.Fatal(e.Start(":8080"))
}

docker-compose.yml


version: '3.8'
...
  server:
    build: ./server
    ports:
      - 8080:8080
    tty: true
    volumes:
      - ./server:/api

Starten Sie den lokalen Server von echo.

docker-compose up --build
docker-compose exec server /bin/ash
go get github.com/labstack/echo
go run main.go

Wenn Sie auf localhost: 8080 zugreifen können, sind Sie fertig.

abschließend

Als nächstes möchte ich so weit gehen, dass ich "Gorm", "MySQL" einfüge

Referenzmaterial

Machen Sie mit "Vue.js + Go language + Docker"! Implementierung der Funktion zum Hochladen von Bildern zum Anfassen So erstellen Sie eine Entwicklungsumgebung für svelte Hello World Recipe

Recommended Posts

Sapper × Go (Echo) × Aufbau einer Docker-Entwicklungsumgebung
Aufbau einer Laravel-Entwicklungsumgebung mit Docker (Mac)
[Docker] Entwicklung der Entwicklungsumgebung Rails6 / Ruby2.7 / MySQL8
Aufbau der Spring Boot + Docker Java-Entwicklungsumgebung
Aufbau der Rails Docker-Umgebung
Java Entwicklungsumgebung Konstruktion
Konstruktions- und Entwicklungsverfahren für lokale WordPress-Umgebungen mit Docker
Aufbau der Rails6-Entwicklungsumgebung [Mac]
WSL2 + VSCode + Docker-Entwicklungsumgebung
Konstruktionsnotiz für die MySQL 5.7 (Docker) -Umgebung
Redmine (Docker) Umgebungskonstruktionsnotiz
[Docker] Rails 5.2-Umgebungskonstruktion mit Docker
Aufbau der Docker x Spring Boot-Umgebung
[Docker] postgres, pgadmin4-Umgebungskonstruktion
Erstellen Sie eine Entwicklungsumgebung für Rails-Anwendungen mit Docker [Docker, Rails, Puma, Nginx, MySQL]
Erstellen Sie die Node.js-Umgebung mit Docker Compose
Umgebungskonstruktion für die Entwicklung von Servlet-Anwendungen
Umgebungsbau mit Docker für Anfänger
Konstruktion der Laravel + Docker Laradock-Nutzungsumgebung
[Unity] Konstruktionsverfahren für die Android-Entwicklungsumgebung
Konstruktionsverfahren für Rails on Docker-Umgebungen
[Umgebungskonstruktion mit Docker] Rails 6 & MySQL 8
Erstellen Sie eine Unity-Entwicklungsumgebung auf Docker
Build Go-Entwicklungsumgebung mit WSL2 + Docker Desktop + VSCode (Remote - Container)
Erstellen einer Entwicklungsumgebung für Ruby on Rails mit Docker + VSCode (Remote Container)
Erstellen einer PostgreSQL-Umgebung mit Docker (vom Setup bis kurz vor der Entwicklung)
SQL-Anweisungslernen ~ Umgebungskonstruktion ~ Docker + MySQL
Aufbau einer GPU-Umgebung mit Docker [Version Oktober 2020]
[Processing x Java] Erstellen einer Entwicklungsumgebung
Schienenumgebungskonstruktion mit Docker (persönliche Apokalypse)
Erstellen Sie mit Docker eine PureScript-Entwicklungsumgebung
Erstellen einer Entwicklungsumgebung für Universal Robotics UR Caps
Konstruktionsnotiz für die Java-Entwicklungsumgebung auf dem Mac
Erstellen Sie mit Docker eine Spring Boot-gradle-mysql-Entwicklungsumgebung
Erstellen einer Umgebung für Laravel + MySQL + phpMyadmin mit Docker
Erstellen Sie mit Docker eine Wordpress-Entwicklungsumgebung
Erstellen Sie eine Ultra96v2-Entwicklungsumgebung auf Docker 1
Einfache Konstruktion der Docker + Django-Entwicklungsumgebung
Erstellen Sie eine Entwicklungsumgebung für Docker + Rails6 + Postgresql
[Jakarta EE 8 Anwendungsentwicklung mit Gradle] 1. Umgebungskonstruktion
[Java] Umgebungskonstruktion
Erstellen Sie mit Docker schnell eine WordPress-Entwicklungsumgebung
Erstellen einer Kaggle-Umgebung mit offiziellem Docker und vscode
Verbessern Sie die Leistung der Docker-Entwicklungsumgebung
Java-Entwicklungsumgebung
Erstellen einer Entwicklungsumgebung mit IntelliJ IDEA + Maven + Tomcat 9
Einfache Erstellung der Docker Compose + Django-Entwicklungsumgebung
Aufbau einer IntelliJ + Docker (APP + DB) + SpringBoot (Maven) -Umgebung