๐ง ํด๋น ๊ธ์ Mac์ ๊ธฐ์ค์ผ๋ก ์ค๋ช ํ๊ณ ์์ต๋๋ค.
Firebase ์ฝ์๋ก ์ด๋ํ์ฌ ์ ํ๋ก์ ํธ๋ฅผ ๋ง๋ค์ด ์ค๋๋ค.
ํ๋ก์ ํธ ์ถ๊ฐ ํ๋ก๋ ํ๋ก์ ํธ ์ด๋ฆ๋ง ์ค์ ํ ์ญ ๋ฒํผ๋ง ๋๋ฌ์ฃผ์๋ฉด ๋ฉ๋๋ค.
์ดํ ๋์ค๋ ์๋ด ํ๋ฉด์ ์ค์ ์์๋ฅผ ๋ฐ๋ผ ์ฐ๊ฒฐ์ ์งํํฉ๋๋ค.
ํ๋ก์ ํธ ๋ฐ๋ก ๊ฐ๊ธฐ์ ๊ฒฝ์ฐ ํด๋ฆญํ๊ธฐ ์ ๊น์ง ๋ณด์ด์ง ์์ต๋๋ค!
Firebase CLI๋ฅผ ์ค์นํ๋ ค๋ฉด, Node.js๊ฐ ํ์ํฉ๋๋ค!
Node.js๋ฅผ ์ค์น๋์ด ์์ง ์๋ค๋ฉด, https://nodejs.org/ko/ ์์ ์ค์นํ ์ ์์ต๋๋ค.
npm install -g firebase-tools
firebase login
์ ๊ฒฝ์ฐ ํฐ๋ฏธ๋์์
firebase init
์ ๊ฒฝ์ฐ ํ๋ก์ ํธ ํฐ๋ฏธ๋์์ ์งํ ํด ์ฃผ์ธ์.
๐ข firebase init ์์ ํฐ๋ฏธ๋์์ ์๋์ ๊ฐ์ด ๋จ๊ฒ ๋๋๋ฐ
์ค๋ช ์ด ์ ํ์๋ค์ํผ space๋ฅผ ๋๋ฌ ์ฃผ์ด์ผ์ง ์ ํ๋ฉ๋๋ค.
๊ทธ๋ฅ ์์๋๋ก ์ด๋ ํ space ๋๋ฅด์ง ์๊ณ ์ํฐ๋ฅผ ๋๋ฅด๊ฒ ๋๋ฉด ์๋ฌ๊ฐ ๋ฐ์ํ๋ ์ฐธ๊ณ ํด ์ฃผ์ธ์!
ํธ์คํ ์ํฐ ์ดํ์๋ ์๋์ ๊ฐ์ด ์ด๋ค ํ๋ก์ ํธ๋ก ์งํํ ์ง ์ค์ ์ด ๊ฐ๋ฅํฉ๋๋ค.
์ด๋ฏธ ํ๋ก์ ํธ๋ฅผ ๋ง๋ ํ์ด๋ ์ฒซ ๋ฒ์งธ๋ฅผ ์ ํํด ์ฃผ์ธ์.
์ดํ์๋ ์์ ์ ํ๋ก์ ํธ ๋ฆฌ์คํธ๊ฐ ๋์ค๋, ์์ ์ด ํธ์คํ ํ๋ก์ ํธ๋ฅผ ์ ํํด ์ฃผ์ธ์
๋ณ๋๋ก ์ ๋ ฅํ์ฌ๋ ๊ด์ฐฎ์ต๋๋ค! ์ผ๋จ๋ฝ ์ ๋ ์ํฐ๋ฅผ ๋๋ฌ public์ผ๋ก ์ค์ ํ๋๋ก ํ๊ฒ ์ต๋๋ค.
๋์ค์ firebase.json์์ ๋ณ๊ฒฝ๋ ๊ฐ๋ฅํฉ๋๋ค.
single-page-app ๊ตฌ์กฐ์ github ์๋ ๋น๋ ๋ฐฐํฌ์ ๊ฒฝ์ฐ ํ์์ ๋ฐ๋ผ ๋ต๋ณํ๋๋ก ํฉ์๋ค.
๊ทธ๋ ๊ฒ ๋๋ค๋ฉดโฆ ์ค์ ์๋ฃ!
Firebase Web์์๋ ๋ค์ ๋ฒํผ์ ๋๋ฌ์ค๋๋ค.
์๋ ํ๋ฉด์ด ๋์๋ค๋ฉด ๋ฐฐํฌ๋ฅผ ์ํ Firebase ์ค์ ์ ์ ๋ถ ์งํ๋ ๊ฒ์ ๋๋ค.
๊ทธ๋ผ ์ด ์ํ์์ ํ๋ก์ ํธ ํฐ๋ฏธ๋์์ firebase deploy
๋ฅผ ์คํํ๊ณ ๋์จ URL๋ก ๋ค์ด๊ฐ ๋ณผ๊น์?
Flutter ํ๋ก์ ํธ์์ ์ค์ ํ ํ๋ฉด์ด ์๋, ์์ ๊ฐ์ ํ๋ฉด์ด ๋์ต๋๋ค.
์ ํฌ๋ ์ด๋๊น์ง Firebase ์ค์ ๋ง์ ์๋ฃํ์๊ฑฐ๋ ์. ๐ฅน
Flutter Web ์ ํ๋ฆฌ์ผ์ด์ ์ ๋น๋ ํ๊ธฐ ์ ์ ๋ช ๊ฐ์ง ์ค์ ์ ๋ณ๊ฒฝํด ์ค์ผ ํฉ๋๋ค.
๐จ ๋ฐฐํฌ ๋๋ ํ ๋ฆฌ ์ค์ ์ build/web์ผ๋ก ์งํํ์ จ๋ค๋ฉด ์๋์ ์ค์ ๋ณ๊ฒฝ์ ์งํํ์ง ์์ผ์ ๋ ๊ด์ฐฎ์ต๋๋ค!
ํ๋ก์ ํธ์ firebase.json ํ์ผ์ ๋ค์ด๊ฐ๋ฉด ์๋์ ๊ธฐ๋ณธ ์ค์ ์ด ๋์ด์์ต๋๋ค.
{
"hosting": {
"public": "public",
"ignore": [
"firebase.json",
"**/.*",
"**/node_modules/**"
]
}
}
"public": "build/web"
์ดํ Flutter Web ์ ํ๋ฆฌ์ผ์ด์
์ flutter build web
๋ช
๋ น์ด๋ฅผ ์ฌ์ฉํ์ฌ ๋น๋ํฉ๋๋ค.
ํด๋น ๋ช
๋ น์ด๋ ์น ์ ํ๋ฆฌ์ผ์ด์
์ build/web
ํด๋์ ์์ฑํฉ๋๋ค!
๋น๋ํ ์ฑ์ ์น์ ์ ์ฉํ๊ธฐ ์ํด ๋ค์ firebase deploy
๋ฅผ ์งํํ์ ๋ค๋ฉด
๋ฐฐํฌ๋ ์ ํ๋ฆฌ์ผ์ด์ ์ Firebase Hosting URL์ ํตํด ํ์ธํ ์ ์์ต๋๋ค!
์ฒซ ๋น๋๊ฐ ์ ์ฉ๋๋ ๋ฐ์๋ ์๊ฐ์ด ๊ฑธ๋ฆด ์ ์์ผ๋ ์ฃผ์ํ์ธ์!