-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathindex.html
293 lines (226 loc) · 31.8 KB
/
index.html
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
<!DOCTYPE html><html lang="en" data-theme="light"><head><meta charset="UTF-8"><meta http-equiv="X-UA-Compatible" content="IE=edge"><meta name="viewport" content="width=device-width, initial-scale=1.0, maximum-scale=1.0, user-scalable=no"><title>Berom's Blog</title><meta name="author" content="Berom"><meta name="copyright" content="Berom"><meta name="format-detection" content="telephone=no"><meta name="theme-color" content="#ffffff"><meta name="description" content="Just record my study">
<meta property="og:type" content="website">
<meta property="og:title" content="Berom's Blog">
<meta property="og:url" content="https://goberomsu.github.io/index.html">
<meta property="og:site_name" content="Berom's Blog">
<meta property="og:description" content="Just record my study">
<meta property="og:locale" content="en_US">
<meta property="og:image" content="https://goberomsu.github.io/img/avatar.JPG">
<meta property="article:author" content="Berom">
<meta name="twitter:card" content="summary">
<meta name="twitter:image" content="https://goberomsu.github.io/img/avatar.JPG"><link rel="shortcut icon" href="/img/avatar.JPG"><link rel="canonical" href="https://goberomsu.github.io/"><link rel="preconnect" href="//cdn.jsdelivr.net"/><link rel="preconnect" href="//www.google-analytics.com" crossorigin=""/><link rel="preconnect" href="//busuanzi.ibruce.info"/><link rel="stylesheet" href="/css/index.css"><link rel="stylesheet" href="https://cdn.jsdelivr.net/npm/@fortawesome/fontawesome-free/css/all.min.css" media="print" onload="this.media='all'"><link rel="stylesheet" href="https://cdn.jsdelivr.net/npm/@fancyapps/ui/dist/fancybox.min.css" media="print" onload="this.media='all'"><script async="async" src="https://www.googletagmanager.com/gtag/js?id=G-BR6CJDHQH5"></script><script>window.dataLayer = window.dataLayer || [];
function gtag(){dataLayer.push(arguments);}
gtag('js', new Date());
gtag('config', 'G-BR6CJDHQH5');
</script><script>const GLOBAL_CONFIG = {
root: '/',
algolia: undefined,
localSearch: {"path":"/search.xml","preload":false,"languages":{"hits_empty":"We didn't find any results for the search: ${query}"}},
translate: undefined,
noticeOutdate: undefined,
highlight: {"plugin":"highlighjs","highlightCopy":true,"highlightLang":true,"highlightHeightLimit":false},
copy: {
success: 'Copy successfully',
error: 'Copy error',
noSupport: 'The browser does not support'
},
relativeDate: {
homepage: false,
post: false
},
runtime: '',
date_suffix: {
just: 'Just',
min: 'minutes ago',
hour: 'hours ago',
day: 'days ago',
month: 'months ago'
},
copyright: undefined,
lightbox: 'fancybox',
Snackbar: undefined,
source: {
justifiedGallery: {
js: 'https://cdn.jsdelivr.net/npm/flickr-justified-gallery/dist/fjGallery.min.js',
css: 'https://cdn.jsdelivr.net/npm/flickr-justified-gallery/dist/fjGallery.min.css'
}
},
isPhotoFigcaption: false,
islazyload: false,
isAnchor: false
}</script><script id="config-diff">var GLOBAL_CONFIG_SITE = {
title: 'Berom\'s Blog',
isPost: false,
isHome: true,
isHighlightShrink: false,
isToc: false,
postUpdate: '2022-11-03 05:51:41'
}</script><noscript><style type="text/css">
#nav {
opacity: 1
}
.justified-gallery img {
opacity: 1
}
#recent-posts time,
#post-meta time {
display: inline !important
}
</style></noscript><script>(win=>{
win.saveToLocal = {
set: function setWithExpiry(key, value, ttl) {
if (ttl === 0) return
const now = new Date()
const expiryDay = ttl * 86400000
const item = {
value: value,
expiry: now.getTime() + expiryDay,
}
localStorage.setItem(key, JSON.stringify(item))
},
get: function getWithExpiry(key) {
const itemStr = localStorage.getItem(key)
if (!itemStr) {
return undefined
}
const item = JSON.parse(itemStr)
const now = new Date()
if (now.getTime() > item.expiry) {
localStorage.removeItem(key)
return undefined
}
return item.value
}
}
win.getScript = url => new Promise((resolve, reject) => {
const script = document.createElement('script')
script.src = url
script.async = true
script.onerror = reject
script.onload = script.onreadystatechange = function() {
const loadState = this.readyState
if (loadState && loadState !== 'loaded' && loadState !== 'complete') return
script.onload = script.onreadystatechange = null
resolve()
}
document.head.appendChild(script)
})
win.activateDarkMode = function () {
document.documentElement.setAttribute('data-theme', 'dark')
if (document.querySelector('meta[name="theme-color"]') !== null) {
document.querySelector('meta[name="theme-color"]').setAttribute('content', '#0d0d0d')
}
}
win.activateLightMode = function () {
document.documentElement.setAttribute('data-theme', 'light')
if (document.querySelector('meta[name="theme-color"]') !== null) {
document.querySelector('meta[name="theme-color"]').setAttribute('content', '#ffffff')
}
}
const t = saveToLocal.get('theme')
if (t === 'dark') activateDarkMode()
else if (t === 'light') activateLightMode()
const asideStatus = saveToLocal.get('aside-status')
if (asideStatus !== undefined) {
if (asideStatus === 'hide') {
document.documentElement.classList.add('hide-aside')
} else {
document.documentElement.classList.remove('hide-aside')
}
}
const detectApple = () => {
if(/iPad|iPhone|iPod|Macintosh/.test(navigator.userAgent)){
document.documentElement.classList.add('apple')
}
}
detectApple()
})(window)</script><meta name="generator" content="Hexo 6.3.0"><link rel="alternate" href="/atom.xml" title="Berom's Blog" type="application/atom+xml">
</head><body><div id="sidebar"><div id="menu-mask"></div><div id="sidebar-menus"><div class="avatar-img is-center"><img src="/img/avatar.JPG" onerror="onerror=null;src='/img/friend_404.gif'" alt="avatar"/></div><div class="sidebar-site-data site-data is-center"><a href="/archives/"><div class="headline">Articles</div><div class="length-num">131</div></a><a href="/tags/"><div class="headline">Tags</div><div class="length-num">6</div></a><a href="/categories/"><div class="headline">Categories</div><div class="length-num">9</div></a></div><hr/><div class="menus_items"><div class="menus_item"><a class="site-page" href="/"><i class="fa-fw fas fa-home"></i><span> Home</span></a></div><div class="menus_item"><a class="site-page" href="/archives/"><i class="fa-fw fas fa-archive"></i><span> Archives</span></a></div><div class="menus_item"><a class="site-page" href="/tags/"><i class="fa-fw fas fa-tags"></i><span> Tags</span></a></div><div class="menus_item"><a class="site-page" href="/categories/"><i class="fa-fw fas fa-folder-open"></i><span> Categories</span></a></div></div></div></div><div class="page" id="body-wrap"><header class="full_page" id="page-header" style="background-image: url('https://user-images.githubusercontent.com/37897508/179231832-9fbc371a-c6cc-4ee5-be8c-0b7d0c46d2d2.jpg')"><nav id="nav"><span id="blog_name"><a id="site-name" href="/">Berom's Blog</a></span><div id="menus"><div id="search-button"><a class="site-page social-icon search"><i class="fas fa-search fa-fw"></i><span> Search</span></a></div><div class="menus_items"><div class="menus_item"><a class="site-page" href="/"><i class="fa-fw fas fa-home"></i><span> Home</span></a></div><div class="menus_item"><a class="site-page" href="/archives/"><i class="fa-fw fas fa-archive"></i><span> Archives</span></a></div><div class="menus_item"><a class="site-page" href="/tags/"><i class="fa-fw fas fa-tags"></i><span> Tags</span></a></div><div class="menus_item"><a class="site-page" href="/categories/"><i class="fa-fw fas fa-folder-open"></i><span> Categories</span></a></div></div><div id="toggle-menu"><a class="site-page"><i class="fas fa-bars fa-fw"></i></a></div></div></nav><div id="site-info"><h1 id="site-title">Berom's Blog</h1></div><div id="scroll-down"><i class="fas fa-angle-down scroll-down-effects"></i></div></header><main class="layout" id="content-inner"><div class="recent-posts" id="recent-posts"><div class="recent-post-item"><div class="recent-post-info no-cover"><a class="article-title" href="/2022/11/03/blog-hexoTheme/" title="Hexo 블로그 테마 추가">Hexo 블로그 테마 추가</a><div class="article-meta-wrap"><span class="post-meta-date"><i class="far fa-calendar-alt"></i><span class="article-meta-label">Created</span><time datetime="2022-11-02T20:42:31.000Z" title="Created 2022-11-03 05:42:31">2022-11-03</time></span><span class="article-meta"><span class="article-meta-separator">|</span><i class="fas fa-inbox"></i><a class="article-meta__categories" href="/categories/algorithm/">algorithm</a></span></div><div class="content">Hexo Blog 테마 설치저의 경우 butterfly theme을 사용하고 있어, butterfly theme 기준으로 설명하겠습니다
command 창에 아래 명령어를 입력해 테마를 github에서 다운로드 받아옵니다
1git clone -b master https://github.com/jerryc127/hexo-theme-butterfly.git themes/butterfly
root 폴더의 config.yml로 이동하여 테마를 butterfly로 변경합니다
1234# Extensions## Plugins: https://hexo.io/plugins/## Themes: https://hexo.io/themes/theme: butterfly
이제 hexo clean && hexo server로 local에서 테마가 바뀌었는지 테스트 합니다
만약 바뀌지 않았다면?
themes 폴더에 들어가서 butterfly를 제외하고 모두 삭제
브라우저에서 캐시 모두 ...</div></div></div><div class="recent-post-item"><div class="recent-post-info no-cover"><a class="article-title" href="/2022/10/31/blog-googleAnalistic/" title="Hexo 블로그 구글 애널리스틱스 등록">Hexo 블로그 구글 애널리스틱스 등록</a><div class="article-meta-wrap"><span class="post-meta-date"><i class="far fa-calendar-alt"></i><span class="article-meta-label">Created</span><time datetime="2022-10-30T22:28:55.000Z" title="Created 2022-10-31 07:28:55">2022-10-31</time></span><span class="article-meta"><span class="article-meta-separator">|</span><i class="fas fa-inbox"></i><a class="article-meta__categories" href="/categories/blog/">blog</a></span></div><div class="content">개요멘토링 중 hexo blog를 구글 서치 콘솔에 등록하려던 중 문제 발생일반적인 html 삽입 방식 말고 깔끔한 방법이 있었던걸로 기억해서 기억 복구 겸 재정리합니다
Google Analistics
구글 애널리스틱스는 웹,앱 등의 메타데이터 관리 지원해주는 구글 서비스입니다
Google Analistics 등록
구글 애널리스틱스 홈페이지에 접속합니다
설정 - 관리에서 속성을 생성합니다
속성 생성시 이름은 Github Pages로 생성합니다
데이터 스트림 - 웹 - 본인의 블로그 url을 등록합니다
url 등록까지 마치면 코드가 발급 됨을 확인할 수 있습니다
Hexo 등록
본인의 theme 하위의 config.yml에 들어가 생성된 코드를 아래 형식으로 입력
google_analytics: G-C17******
hexo deploy -g후 구글 서치 콘솔 등록시 구글 애널리스틱스로 등록하시면 됩니다
</div></div></div><div class="recent-post-item"><div class="recent-post-info no-cover"><a class="article-title" href="/2022/10/14/blog-sitemap-seo/" title="hexo blog SEO와 Sitemap setting">hexo blog SEO와 Sitemap setting</a><div class="article-meta-wrap"><span class="post-meta-date"><i class="far fa-calendar-alt"></i><span class="article-meta-label">Created</span><time datetime="2022-10-14T05:57:50.000Z" title="Created 2022-10-14 14:57:50">2022-10-14</time></span><span class="article-meta"><span class="article-meta-separator">|</span><i class="fas fa-inbox"></i><a class="article-meta__categories" href="/categories/algorithm/">algorithm</a></span></div><div class="content">Hexo SEO와 sitemap.xml
아래 커맨드를 터미널(git bash 등)에 실행해주세요
12npm install hexo-generator-feed --savenpm install hexo-generator-seo-friendly-sitemap --save
블로그 폴더의 _config.yml에 아래 복사 붙여 넣기 합니다
1234567891011121314feed: type: atom # atom or rss2 path: atom.xml limit: 50 # 공개할 rss feed 수 # 기본적으로 여기까지만 쓴다. 아래는 옵션 hub: content: content_limit: 140 # 요약 글자수 content_limit_delim: ' '# sitemap auto generatorsitemap: path: sitemap.xml tag: true # 사이트맵에 태그 주소 포함 여부 category: true # ...</div></div></div><div class="recent-post-item"><div class="recent-post-info no-cover"><a class="article-title" href="/2022/08/15/kurento-signaling/" title="Kurento 시그널링 서버 feat STUN/TURN">Kurento 시그널링 서버 feat STUN/TURN</a><div class="article-meta-wrap"><span class="post-meta-date"><i class="far fa-calendar-alt"></i><span class="article-meta-label">Created</span><time datetime="2022-08-15T02:21:51.000Z" title="Created 2022-08-15 11:21:51">2022-08-15</time></span><span class="article-meta"><span class="article-meta-separator">|</span><i class="fas fa-inbox"></i><a class="article-meta__categories" href="/categories/dev/">dev</a></span></div><div class="content">시그널링 서버 왜 필요한가?시그널링이 필요한 이유를 꼽으라면, WebRTC를 이용한 P2P 통신을 하기 전 세팅을 하기 위함이다.제 3자 소프트웨어 설치 없이 종단 간 데이터 공유화 화상 회를
Reference[WebRTC] WebRTC를 공부하며 스트리밍 과정 익히기
초보 개발자 WebRTC 시동걸기
초보개발자 WebRTC 시그널링서버 만들기
</div></div></div><div class="recent-post-item"><div class="recent-post-info no-cover"><a class="article-title" href="/2022/08/14/howToUseDocker/" title="Docker 사용법">Docker 사용법</a><div class="article-meta-wrap"><span class="post-meta-date"><i class="far fa-calendar-alt"></i><span class="article-meta-label">Created</span><time datetime="2022-08-14T09:31:03.000Z" title="Created 2022-08-14 18:31:03">2022-08-14</time></span><span class="article-meta"><span class="article-meta-separator">|</span><i class="fas fa-inbox"></i><a class="article-meta__categories" href="/categories/dev/">dev</a></span></div><div class="content">Docker 사용법
모든 이미지 제거
1docker rm $(docker ps -a -q)
이미지 직접 접근
1docker exec -it [container_id] bash
이미지 조회
1docker images -a
Docker 설치123456789101112131415161718192021222324// apt 인덱스 업데이트$ sudo apt-get update// repository over HTTPS를 사용하기 위한 패키지 설치$ sudo apt-get install -y apt-transport-https ca-certificates curl gnupg-agent software-properties-common// GPG Key를 추가하고 확인$ curl -fsSL https://download.docker.com/linux/ubuntu/gpg | sudo apt-key add -$ sudo apt-key fingerprint 0EBFCD88pub rs ...</div></div></div><div class="recent-post-item"><div class="recent-post-info no-cover"><a class="article-title" href="/2022/08/10/howToUseGit/" title="git 사용 방법">git 사용 방법</a><div class="article-meta-wrap"><span class="post-meta-date"><i class="far fa-calendar-alt"></i><span class="article-meta-label">Created</span><time datetime="2022-08-10T10:20:15.000Z" title="Created 2022-08-10 19:20:15">2022-08-10</time></span><span class="article-meta"><span class="article-meta-separator">|</span><i class="fas fa-inbox"></i><a class="article-meta__categories" href="/categories/dev/">dev</a></span></div><div class="content">Git 사용법
원격 저장소 갱신
1git remote update
원격 저장소 branch 확인
1git branch -r
원격 저장소 가져오기
branch 이름 형식은 origin/dev 이렇게 적어야합니다.
git branch -r로 출력된 이름을 입력하면 되요
1git checkout -t [branch 이름]
Referencegit 브랜치: 가져오기, 합치기, 삭제하기
</div></div></div><div class="recent-post-item"><div class="recent-post-info no-cover"><a class="article-title" href="/2022/07/31/ai-LinearRegression/" title="Linear Regression(회귀) - ML">Linear Regression(회귀) - ML</a><div class="article-meta-wrap"><span class="post-meta-date"><i class="far fa-calendar-alt"></i><span class="article-meta-label">Created</span><time datetime="2022-07-31T13:03:35.000Z" title="Created 2022-07-31 22:03:35">2022-07-31</time></span><span class="article-meta"><span class="article-meta-separator">|</span><i class="fas fa-inbox"></i><a class="article-meta__categories" href="/categories/ai/">ai</a></span></div><div class="content">Linear Regression(회귀) - ML선형 예측 함수를 사용해 회귀식을 모델링하여 알려지지 않은 파라미터는 데이터부터 추정한다현실 세계의 많은 데이터들은 선형 그래프를 그리고, 선형 그래프는 직관적이다.늦게 잘수록 피곤하다. 많이 먹을수록 배부르다 등 대부분의 데이터가 근사하게 선을 그리게 된다
이러한 회귀 모델은 일반적으로 최소 제곱법을 사용해 선형 회귀 모델을 만든다 - 최소 제곱법을 사용하면 일단 값이 모두 양수가 나오고, 선형 함수 - 실제 값에 가중치를 주는 것을 의미한다
Linear Hypothesis선형한 그래프를 예측한다는 것은 어떤 데이터 값의 집합에서 Linear한 선을 찾는다 생각할 수 있다이 때 Linear Regression Model이 학습 하는 것은 해당 데이터를 가장 잘 표현하는 선형 그래프를 찾는 것이다.
또한 축이 2개이고, 일반적으로 변수가 2개이므로, H(x) = Wx+b의 그래프를 가진다H(x)는 가설이며, Hypothe ...</div></div></div><div class="recent-post-item"><div class="recent-post-info no-cover"><a class="article-title" href="/2022/07/28/kurentoSetUp/" title="Kurento Docker로 설치하는 방법 feat Window">Kurento Docker로 설치하는 방법 feat Window</a><div class="article-meta-wrap"><span class="post-meta-date"><i class="far fa-calendar-alt"></i><span class="article-meta-label">Created</span><time datetime="2022-07-28T01:41:59.000Z" title="Created 2022-07-28 10:41:59">2022-07-28</time></span><span class="article-meta"><span class="article-meta-separator">|</span><i class="fas fa-inbox"></i><a class="article-meta__categories" href="/categories/dev/">dev</a></span></div><div class="content">현재 상황
Window Docker Client가 있긴 하지만, 프로젝트 초기기도 하구 이참에 그냥 WSL에서 쓰는게 더 편할거라 생각했다
준비 사항
WSL2
Kali Linux
Kali도 데비안 계열이라 상관 없을거라 생각했는데 패키지 저장소 관련 에러가 막 터져서 우분투로 갔다
22.07.30 기준 Ubuntu가 정신 건강에 매우 좋다
Ubuntu 18.0.5
Docker
WSL2에 Docker 설치
Docker 설치
Docker 홈페이지에 들어가서 윈도우용 클라이언트를 설치한다
설치가 완료되면 Docker를 열어서 Setting - Resource에서 WSL2와 연동 시키고, Restart 하면 된다.
이제 docker images 커맨드를 입력하면 아래와 같이 실행되는 것을 알 수 있다
Docker 저장소에서 Kurento Server 가져오자
1docker pull kurento/kurento-media-server:latest
Kurento Medi ...</div></div></div><div class="recent-post-item"><div class="recent-post-info no-cover"><a class="article-title" href="/2022/07/27/kurentoGroupCall/" title="Kurento로 N:N Group Call 하는 방법">Kurento로 N:N Group Call 하는 방법</a><div class="article-meta-wrap"><span class="post-meta-date"><i class="far fa-calendar-alt"></i><span class="article-meta-label">Created</span><time datetime="2022-07-27T10:10:39.000Z" title="Created 2022-07-27 19:10:39">2022-07-27</time></span><span class="article-meta"><span class="article-meta-separator">|</span><i class="fas fa-inbox"></i><a class="article-meta__categories" href="/categories/dev/">dev</a></span></div><div class="content">Group Call wtih Kurento- JavaNode.js로 어플리케이션을 개발하는 중인데 Webrtc를 사용하는 것이 처음이다보니, Docs에 있는 예제를 읽고 먼저 이해하는 것이 먼저란 생각이 들어서 해당 글을 쓰게 되었다. 개념도 부족하고 이해도 부족하기에 일단 블로그 포스팅하고 점점 채워 나가야겠다
선행 개념
방이란?
각 방은 다른 방과 격리된 자체 파이프라인을 생성한다
특정 방에 접속한 클라이언트는 같은 방에 있는 클라이언트와만 미디어 교환이 가능하다
클라이언트
각 클라이언트는 자체 미디어를 보내고 차례로 다른 모든 참가자로부터 미디어를 받는다.
이는 각 방의 총 n*n 개의 WebRTC End Point가 있음을 의미한다.
n은 클라이언트의 수이다.
새 클라이언트가 방에 들어오면 새 webrtc가 생성되고 서버에서 미디어를 수신하도록 협상한다
방에 원래 있던 사용자들에게는 새 사용자가 연결되었음을 알린다
모든 참가자는 서버에 새 참가자의 미디어를 수신하 ...</div></div></div><div class="recent-post-item"><div class="recent-post-info no-cover"><a class="article-title" href="/2022/07/27/ai-hello/" title="Tensorflow intro - Hello Tensor Flow">Tensorflow intro - Hello Tensor Flow</a><div class="article-meta-wrap"><span class="post-meta-date"><i class="far fa-calendar-alt"></i><span class="article-meta-label">Created</span><time datetime="2022-07-27T05:55:58.000Z" title="Created 2022-07-27 14:55:58">2022-07-27</time></span><span class="article-meta"><span class="article-meta-separator">|</span><i class="fas fa-inbox"></i><a class="article-meta__categories" href="/categories/ai/">ai</a></span></div><div class="content">TensorFlow 입문TensorFlow는 graph로 연산을 나타내는 프로그래밍 시스템이다.그래서 당연히 노드 단위로 일을 하고 graph에 있는 노드는 op(작업)(operation)이라고 부른다.보통 op는 0 이상의 Tensor를 가질 수 있다. Tensor는 정형화된 다차원 배열이다
TensorFlow에서 Graph는 연산을 표현해 놓은 것이라서 연산을 하려면 graph가 session 상에 실행되어야 한다. Session은 graph의 작업을 CPU/GPU 같은 Device에 배정하고 실행을 위한 메서들을 제공한다.이러한 메서드들이 작업을 실행해서 Tensor를 만들어 낸다.(Tensorflow 2.x.x 이상 부터는 Session을 만드는 과정이 사라졌다)
보통 Tensro는 파이썬에서 numpy ndarry 형식으로 출력된다ㅓ.
설치 방법1pip install tensorflow-gpu
Error && Tip코드 실행 시 Warning 뜨지 ...</div></div></div><nav id="pagination"><div class="pagination"><span class="page-number current">1</span><a class="page-number" href="/page/2/#content-inner">2</a><span class="space">…</span><a class="page-number" href="/page/14/#content-inner">14</a><a class="extend next" rel="next" href="/page/2/#content-inner"><i class="fas fa-chevron-right fa-fw"></i></a></div></nav></div><div class="aside-content" id="aside-content"><div class="card-widget card-info"><div class="is-center"><div class="avatar-img"><img src="/img/avatar.JPG" onerror="this.onerror=null;this.src='/img/friend_404.gif'" alt="avatar"/></div><div class="author-info__name">Berom</div><div class="author-info__description">Just record my study</div></div><div class="card-info-data site-data is-center"><a href="/archives/"><div class="headline">Articles</div><div class="length-num">131</div></a><a href="/tags/"><div class="headline">Tags</div><div class="length-num">6</div></a><a href="/categories/"><div class="headline">Categories</div><div class="length-num">9</div></a></div><a id="card-info-btn" target="_blank" rel="noopener" href="https://github.com/xxxxxx"><i class="fab fa-github"></i><span>Follow Me</span></a></div><div class="card-widget card-announcement"><div class="item-headline"><i class="fas fa-bullhorn fa-shake"></i><span>Announcement</span></div><div class="announcement_content">This is my Blog</div></div><div class="sticky_layout"><div class="card-widget card-recent-post"><div class="item-headline"><i class="fas fa-history"></i><span>Recent Post</span></div><div class="aside-list"><div class="aside-list-item no-cover"><div class="content"><a class="title" href="/2022/11/03/blog-hexoTheme/" title="Hexo 블로그 테마 추가">Hexo 블로그 테마 추가</a><time datetime="2022-11-02T20:42:31.000Z" title="Created 2022-11-03 05:42:31">2022-11-03</time></div></div><div class="aside-list-item no-cover"><div class="content"><a class="title" href="/2022/10/31/blog-googleAnalistic/" title="Hexo 블로그 구글 애널리스틱스 등록">Hexo 블로그 구글 애널리스틱스 등록</a><time datetime="2022-10-30T22:28:55.000Z" title="Created 2022-10-31 07:28:55">2022-10-31</time></div></div><div class="aside-list-item no-cover"><div class="content"><a class="title" href="/2022/10/14/blog-sitemap-seo/" title="hexo blog SEO와 Sitemap setting">hexo blog SEO와 Sitemap setting</a><time datetime="2022-10-14T05:57:50.000Z" title="Created 2022-10-14 14:57:50">2022-10-14</time></div></div><div class="aside-list-item no-cover"><div class="content"><a class="title" href="/2022/08/15/kurento-signaling/" title="Kurento 시그널링 서버 feat STUN/TURN">Kurento 시그널링 서버 feat STUN/TURN</a><time datetime="2022-08-15T02:21:51.000Z" title="Created 2022-08-15 11:21:51">2022-08-15</time></div></div><div class="aside-list-item no-cover"><div class="content"><a class="title" href="/2022/08/14/howToUseDocker/" title="Docker 사용법">Docker 사용법</a><time datetime="2022-08-14T09:31:03.000Z" title="Created 2022-08-14 18:31:03">2022-08-14</time></div></div></div></div><div class="card-widget card-categories"><div class="item-headline">
<i class="fas fa-folder-open"></i>
<span>Categories</span>
<a class="card-more-btn" href="/categories/" title="More">
<i class="fas fa-angle-right"></i></a>
</div>
<ul class="card-category-list" id="aside-cat-list">
<li class="card-category-list-item "><a class="card-category-list-link" href="/categories/ai/"><span class="card-category-list-name">ai</span><span class="card-category-list-count">2</span></a></li><li class="card-category-list-item "><a class="card-category-list-link" href="/categories/algorithm/"><span class="card-category-list-name">algorithm</span><span class="card-category-list-count">59</span></a></li><li class="card-category-list-item "><a class="card-category-list-link" href="/categories/blog/"><span class="card-category-list-name">blog</span><span class="card-category-list-count">1</span></a></li><li class="card-category-list-item "><a class="card-category-list-link" href="/categories/dev/"><span class="card-category-list-name">dev</span><span class="card-category-list-count">7</span></a></li><li class="card-category-list-item "><a class="card-category-list-link" href="/categories/etc/"><span class="card-category-list-name">etc</span><span class="card-category-list-count">32</span></a></li><li class="card-category-list-item "><a class="card-category-list-link" href="/categories/language/"><span class="card-category-list-name">language</span><span class="card-category-list-count">17</span></a></li><li class="card-category-list-item "><a class="card-category-list-link" href="/categories/secure/"><span class="card-category-list-name">secure</span><span class="card-category-list-count">3</span></a></li><li class="card-category-list-item "><a class="card-category-list-link" href="/categories/sql/"><span class="card-category-list-name">sql</span><span class="card-category-list-count">6</span></a></li>
</ul></div><div class="card-widget card-tags"><div class="item-headline"><i class="fas fa-tags"></i><span>Tags</span></div><div class="card-tag-cloud"><a href="/tags/Docker/" style="font-size: 1.1em; color: #999">Docker</a> <a href="/tags/Kurento/" style="font-size: 1.23em; color: #999ea6">Kurento</a> <a href="/tags/Programmers/" style="font-size: 1.37em; color: #99a4b2">Programmers</a> <a href="/tags/Webrtc/" style="font-size: 1.1em; color: #999">Webrtc</a> <a href="/tags/git/" style="font-size: 1.23em; color: #999ea6">git</a> <a href="/tags/%EB%B8%94%EB%A1%9C%EA%B7%B8/" style="font-size: 1.5em; color: #99a9bf">블로그</a></div></div><div class="card-widget card-archives"><div class="item-headline"><i class="fas fa-archive"></i><span>Archives</span></div><ul class="card-archive-list"><li class="card-archive-list-item"><a class="card-archive-list-link" href="/archives/2022/11/"><span class="card-archive-list-date">November 2022</span><span class="card-archive-list-count">1</span></a></li><li class="card-archive-list-item"><a class="card-archive-list-link" href="/archives/2022/10/"><span class="card-archive-list-date">October 2022</span><span class="card-archive-list-count">2</span></a></li><li class="card-archive-list-item"><a class="card-archive-list-link" href="/archives/2022/08/"><span class="card-archive-list-date">August 2022</span><span class="card-archive-list-count">3</span></a></li><li class="card-archive-list-item"><a class="card-archive-list-link" href="/archives/2022/07/"><span class="card-archive-list-date">July 2022</span><span class="card-archive-list-count">14</span></a></li><li class="card-archive-list-item"><a class="card-archive-list-link" href="/archives/2022/03/"><span class="card-archive-list-date">March 2022</span><span class="card-archive-list-count">111</span></a></li></ul></div><div class="card-widget card-webinfo"><div class="item-headline"><i class="fas fa-chart-line"></i><span>Info</span></div><div class="webinfo"><div class="webinfo-item"><div class="item-name">Article :</div><div class="item-count">131</div></div><div class="webinfo-item"><div class="item-name">UV :</div><div class="item-count" id="busuanzi_value_site_uv"><i class="fa-solid fa-spinner fa-spin"></i></div></div><div class="webinfo-item"><div class="item-name">PV :</div><div class="item-count" id="busuanzi_value_site_pv"><i class="fa-solid fa-spinner fa-spin"></i></div></div><div class="webinfo-item"><div class="item-name">Last Push :</div><div class="item-count" id="last-push-date" data-lastPushDate="2022-11-02T20:51:40.432Z"><i class="fa-solid fa-spinner fa-spin"></i></div></div></div></div></div></div></main><footer id="footer"><div id="footer-wrap"><div class="copyright">©20 - 2022 By Berom</div><div class="framework-info"><span>Framework </span><a target="_blank" rel="noopener" href="https://hexo.io">Hexo</a><span class="footer-separator">|</span><span>Theme </span><a target="_blank" rel="noopener" href="https://github.com/jerryc127/hexo-theme-butterfly">Butterfly</a></div></div></footer></div><div id="rightside"><div id="rightside-config-hide"><button id="darkmode" type="button" title="Switch Between Light And Dark Mode"><i class="fas fa-adjust"></i></button><button id="hide-aside-btn" type="button" title="Toggle between single-column and double-column"><i class="fas fa-arrows-alt-h"></i></button></div><div id="rightside-config-show"><button id="rightside_config" type="button" title="Setting"><i class="fas fa-cog fa-spin"></i></button><button id="go-up" type="button" title="Back To Top"><i class="fas fa-arrow-up"></i></button></div></div><div id="local-search"><div class="search-dialog"><nav class="search-nav"><span class="search-dialog-title">Search</span><span id="loading-status"></span><button class="search-close-button"><i class="fas fa-times"></i></button></nav><div class="is-center" id="loading-database"><i class="fas fa-spinner fa-pulse"></i><span> Loading the Database</span></div><div class="search-wrap"><div id="local-search-input"><div class="local-search-box"><input class="local-search-box--input" placeholder="Search for Posts" type="text"/></div></div><hr/><div id="local-search-results"></div></div></div><div id="search-mask"></div></div><div><script src="/js/utils.js"></script><script src="/js/main.js"></script><script src="https://cdn.jsdelivr.net/npm/@fancyapps/ui/dist/fancybox.umd.min.js"></script><script src="/js/search/local-search.js"></script><div class="js-pjax"></div><script async data-pjax src="//busuanzi.ibruce.info/busuanzi/2.3/busuanzi.pure.mini.js"></script></div></body></html>