update local environment to build the bookish-api
This commit is contained in:
@@ -4,35 +4,13 @@ bookish is a customer relationship model for library systems. It keeps track of
|
|||||||
## Prerequisites
|
## Prerequisites
|
||||||
|
|
||||||
- You will need [Docker Desktop](https://docs.docker.com/desktop/) installed.
|
- You will need [Docker Desktop](https://docs.docker.com/desktop/) installed.
|
||||||
- You will need [Golang](https://golang.org/doc/install) installed.
|
|
||||||
|
|
||||||
## Getting Started
|
## Getting Started
|
||||||
To run bookish locally you can use the docker-compose in the root directory to spin up the local environment:
|
|
||||||
|
To run bookish locally first set the `BOOKSHOST` environment variable in `./docker-compose.yml` to the Books API hostname. You can then use the docker-compose from the root directory to spin up the local environment:
|
||||||
|
|
||||||
```
|
```
|
||||||
docker-compose up -d
|
docker-compose up -d
|
||||||
```
|
```
|
||||||
|
|
||||||
This will start a local MySQL container on port `3306` using the `root` user and password `123pass`. A volume will be mounted that holds spin up SQL scripts that will prepare the database for you.
|
This will start a local MySQL container on port `3306` using the `root` user and password `123pass`. A volume will be mounted that holds spin up SQL scripts that will prepare the database for you.ish-server` directory.
|
||||||
|
|
||||||
You will also need to add the following `.env` file to the `bookish-server/cmd/api` folder:
|
|
||||||
|
|
||||||
```
|
|
||||||
export APIPORT=3000
|
|
||||||
export LOGLEVEL=Debug
|
|
||||||
export DBHOST=localhost
|
|
||||||
export DBUSER=root
|
|
||||||
export DBPASS=123pass
|
|
||||||
export DBPORT=3306
|
|
||||||
export BOOKSHOST=<books API endpoint>
|
|
||||||
```
|
|
||||||
|
|
||||||
## Installing
|
|
||||||
|
|
||||||
Before running the server call `go mod tidy` from the `bookish/bookish-server` directory to install any dependencies.
|
|
||||||
|
|
||||||
## Testing
|
|
||||||
|
|
||||||
To run unit tests for `bookish-server` run `go test ./...` from the `bookish/bookish-server` directory.
|
|
||||||
|
|
||||||
## Usage
|
|
||||||
@@ -0,0 +1,9 @@
|
|||||||
|
FROM golang:latest
|
||||||
|
|
||||||
|
WORKDIR /go/src/bookish
|
||||||
|
COPY . .
|
||||||
|
|
||||||
|
RUN go get -d -v ./...
|
||||||
|
RUN go install -v ./...
|
||||||
|
|
||||||
|
CMD ["api"]
|
||||||
+15
-1
@@ -1,6 +1,20 @@
|
|||||||
version: "3.1"
|
version: "3.8"
|
||||||
|
|
||||||
services:
|
services:
|
||||||
|
api:
|
||||||
|
build: ./bookish-server
|
||||||
|
depends_on:
|
||||||
|
- db
|
||||||
|
ports:
|
||||||
|
- 3001:3001
|
||||||
|
environment:
|
||||||
|
- APIPORT=3001
|
||||||
|
- LOGLEVEL=Debug
|
||||||
|
- DBHOST=db
|
||||||
|
- DBUSER=root
|
||||||
|
- DBPASS=123pass
|
||||||
|
- DBPORT=3306
|
||||||
|
- BOOKSHOST=<
|
||||||
db:
|
db:
|
||||||
image: mysql
|
image: mysql
|
||||||
ports:
|
ports:
|
||||||
|
|||||||
Reference in New Issue
Block a user