Vorderseite: Svelte.js (Sapper), API: Go (Echo) Ich wollte eine App erstellen Mit Docker erstellt.
Bis zu dem Punkt, an dem Sapper, Echo mit einem lokalen Host verbunden werden kann
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
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
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.
Als nächstes möchte ich so weit gehen, dass ich "Gorm", "MySQL" einfüge
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