# images field type is nested
GET products/_search
{
"track_total_hits": true,
"size": 0,
"aggs": {
"counts": {
"terms": {
"script": "params['_source']['images'].size()",
# Serve nextJS app from a port through NGINX reverse proxy (HTTP) | |
# Path: /etc/nginx/sites-available/default | |
# Default server configuration for HTTP | |
server { | |
server_name www.DOMAINNAME.com DOMAINNAME.com; | |
# Serve any static assets with NGINX | |
location /_next/static { | |
alias /home/ubuntu/PROJECT_FOLDER/.next/static; |
import 'package:flutter/material.dart'; | |
class ExpandablePageView extends StatefulWidget { | |
final List<Widget> children; | |
const ExpandablePageView({ | |
Key key, | |
@required this.children, | |
}) : super(key: key); |
import Component from "@glimmer/component"; | |
import { tracked } from "@glimmer/tracking"; | |
import Object from "@ember/object"; | |
import { reads } from "@ember/object/computed"; | |
import { validator, buildValidations } from "ember-cp-validations"; | |
import { getOwner } from "@ember/application"; | |
const Validations = buildValidations({ | |
billing_first_name: { | |
descriptionKey: "form.fields.billing_first_name", |
Ubuntu 19.10์์ Visual Studio Code ์ฌ์ฉ ์ค ํ์ ์ ํํค๋ฅผ ๋๋ฅด๊ณ ํ๊ธ์ ์
๋ ฅํ๋ ค ํ๋๋,
ํ๊ธ ์
๋ ฅ์ด ์๋๊ณ ์์ด๋ง ๊ณ์ ์
๋ ฅ๋๋ ํ์์ ๋ฐ๊ฒฌํ๋ค. ๊ทธ๋์ ์ธํฐ๋ท์ ๊ฒ์ํด ๋ดค๋๋
snap ํ์์ Visual Studio Code๋ฅผ ์ค์นํ ๊ฒฝ์ฐ์, Ubuntu์ ์
๋ ฅ๊ธฐ์ธ IBus์ ์ถฉ๋ํด์ ์ผ์ด๋๋
ํ์์ด๋ผ๊ณ ํ๋ค. ๊ทธ๋ฐ๋ฐ .deb
ํ์์ Visual Studio Code๋ฅผ ์ค์นํ ๊ฒฝ์ฐ์๋ ๊ทธ๋ฐ ๋ฌธ์ ๊ฐ
์๋ค๋ ์ฌ์ค์ ์๊ฒ ๋์ด, ์ค์นํด ๋ดค๋๋ ํ๊ธ ์
๋ ฅ์ด ์ ์์ ์ผ๋ก ์ด๋ฃจ์ด์ง๋ ๊ฒ์
ํ์ธํ๋ค. ๊ทธ๋์ ๊ฐ์ ๋ฌธ์ ๋ฅผ ๊ฒช๋ ์ฌ๋๋ค์ ์ํด ์ด ํด๊ฒฐ๋ฒ์ ๊ณต์ ํ๊ณ ์ ํ๋ค.
-
๋จผ์ ์ด๋ฏธ ์ค์น๋์ด ์๋ snap ํ์์ Visual Studio Code๋ฅผ ์ ๊ฑฐํ๋ค.
import 'package:flutter/material.dart'; | |
void main() => runApp(MyApp()); | |
class MyApp extends StatelessWidget { | |
@override | |
Widget build(BuildContext context) { | |
return MaterialApp( | |
theme: ThemeData( | |
primarySwatch: Colors.blue, |
- Traefik: Reverse-proxy router
- Docker-swarm: Docker-supported orchestrator
-
kubernetes(์ดํ k8) ๋ ๋ฌด๊ฒ๊ณ ๋๋ฆฌ๋ค. docker-swarm(์ดํ DS) ์ docker ์ต์ ๋ฒ์ ์ ๊ธฐ๋ณธ์ผ๋ก ํ์ฌ๋์ด ๋์จ๋ค. ๋ํ
helm
์ด๋ ๋ณ๋์ ๊ด๋ฆฌcli(kubeadm, kubectl)
๋ฅผ ์ค์นํ ํ์๊ฐ ์๋ค. -
k8 ์ ์ธํ ๋ ์ด๋ ต๋ค: ์ธํ ํ๊ธฐ๊ฐ ์๋ ๊น๋ค๋ก์ ์ค์ ๋ก ์ด์ํ๊ธฐ ์ ์ ํ ๊ฒฝ์ฐ๋ devops ํ์ ๊ฐ์ง ์ต์ 20๋ช ์ด์์ ๋๊ท๋ชจ ์ฌ์ด์ฆ ํ์ด๋ค. ํ ๋ช ์ด ์์ ํ๋ ๊ฒ์ด ์์ฃผ ๋ถ๊ฐ๋ฅํ ๊ฒ์ ์๋์ง๋ง, ๊ธด๊ธ์์ ์์๋ ๋ง์ด ์ํํด์ง ์ ์๋ค. ์ด์์ด 10๋ช ์ด ๋์ง ์๋ ์ฐ๋ฆฌํ ๊ฐ์ ๊ฒฝ์ฐ๋ ํ ์ฌ๋์ด ๊ธํ๊ฒ ๊ธฐ๋ฅ์์ ์ ํด์ผ๋ ์ผ์ด ๋ง๋ค.
import React, {Component} from 'react' | |
import { Container, Header, HeaderContent, Grid, GridColumn } from 'semantic-ui-react' | |
class Main extends Component { | |
constructor (props) { | |
super(props) | |
this.state = { | |
hello: 'heeeeeeello', | |
browser: {height: window.innerHeight, width: window.innerWidth}, | |
headerHeight: 50 | |
} |