40 lines
1.3 KiB
Markdown
40 lines
1.3 KiB
Markdown
+++
|
|
date = "2023-03-29"
|
|
tags = ["northflank","api","ent"]
|
|
title = "northflankでentのapiを触ってみた"
|
|
slug = "api"
|
|
+++
|
|
|
|
最近、fly.ioを使ってることもあって、db:postgresよりもsqliteのほうがありがたい感じになってる。
|
|
|
|
northflankで動かしてたapiのdbがpostgresだったので、docker-volumeに変更して、sqliteに変更にしてみました。
|
|
|
|
### ハマったところ
|
|
|
|
ハマったのは前回と同じで、`service/CMD override`で`custom command`を選択して、goの場合は`bin/binary`とかやります。
|
|
|
|
表示 : `/cnb/process/web bin/binary`
|
|
|
|
volumeも少しハマりました。
|
|
|
|
container上のvolumeなので、`/`はcontainerのrootを指します。
|
|
|
|
例えば、volumeを`/data`にmountするとして、sqliteはこんな感じになります。
|
|
|
|
```sh
|
|
$ go generate ./...
|
|
$ go build
|
|
```
|
|
|
|
```go:main.go
|
|
func main() {
|
|
client, err := ent.Open(dialect.SQLite, "file:/data/ent.sqlite?_fk=1")
|
|
//client, err := ent.Open(dialect.SQLite, "file:ent?mode=memory&cache=shared&_fk=1")
|
|
}
|
|
```
|
|
|
|
今現在、ちょっとした遊びを考えてるんだけど、遊びを考えるのって難しい。
|
|
|
|
例えば、botでカード占いをできるようにしたんだけど、これをapiと連携した場合、どんな感じにすれば面白いんだろうとか、長く楽しめそうかなとか、その辺。
|
|
|