{"id":2549,"date":"2020-08-05T09:00:00","date_gmt":"2020-08-05T00:00:00","guid":{"rendered":"http:\/\/43.203.250.216\/?p=2549"},"modified":"2025-10-01T16:25:42","modified_gmt":"2025-10-01T07:25:42","slug":"opengrok-%ec%b5%9c%ec%8b%a0%eb%b2%84%ec%a0%84-%ec%84%a4%ec%b9%98%ed%95%98%ea%b8%b0","status":"publish","type":"post","link":"https:\/\/litcoder.com\/?p=2549","title":{"rendered":"OpenGrok \ucd5c\uc2e0\ubc84\uc804 \uc124\uce58\ud558\uae30"},"content":{"rendered":"\n<blockquote class=\"wp-block-quote is-layout-flow wp-block-quote-is-layout-flow\"><p>\ud55c \ub54c \uac11\uc790\uae30 \ubc30\ud3ec\ud558\ub358 \uc11c\ubc84\uac00 \uc5c6\uc5b4\uc838\uc11c \ud639\uc2dc\ub098 \ud558\ub294 \uac71\uc815\uc5d0 \ubc30\ud3ec\ud30c\uc77c\uc744 \ub2e4\uc6b4\ub85c\ub4dc \ubc1b\uc544 \ub450\uae30\uae4c\uc9c0 \ud588\ub358 OpenGrok project\uac00 \ub2e4\ud589\ud788 Oracle\uc758 GitHub \ub0b4\uc5d0 \uc790\ub9ac\ub97c \uc7a1\uace0 \uc798 \uafb8\uc900\ud788 \uc5c5\ub370\uc774\ud2b8 \ub418\uace0 \uc788\ub2e4.<\/p><p>\uc608\uc804\uc5d0 \uc791\uc131\ud588\ub358 OpenGrok \uc124\uce58\ub97c \uc704\ud55c \uae00\ub4e4\uc740 \ub108\ubb34 \uc624\ub798\ub418\uc5b4\uc11c \uc798 \ub9de\uc9c0 \uc54a\ub294 \uac83\ub3c4 \uc788\uace0 \ud574\uc11c \ucd5c\uadfc \ubc84\uc804\uacfc \ud658\uacbd\uc744 \uae30\uc900\uc73c\ub85c \ub2e4\uc2dc \uc124\uce58 \uacfc\uc815\uc744 \uc815\ub9ac\ud588\ub2e4. \uc774 \ud3ec\uc2a4\ud305\uc740<span style=\"font-size: inherit;\"> \uc798 \uc791\uc131\ub41c \ud504\ub85c\uc81d\ud2b8\uc758 \ubb38\uc11c\uc778 \u2018<\/span><a style=\"font-size: inherit;\" href=\"https:\/\/github.com\/oracle\/opengrok\/wiki\/How-to-setup-OpenGrok\">How to setup OpenGrok<\/a><span style=\"font-size: inherit;\">\u2019\uc744 \uae30\uc900\uc73c\ub85c \ud55c \ub098\ub984\uc758 \uc815\ub9ac\uc774\ub2e4.<\/span><\/p><\/blockquote>\n\n\n\n<h2 class=\"wp-block-heading\">\ud658\uacbd\uacfc \ud544\uc694\ud55c \uac83\ub4e4<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">&#8211; Ubuntu 18.4 LTS<br>&#8211; OpenJDK 11<br>&#8211; Tomcat 9<br>&#8211; Universal-ctags<br>&#8211; \ucd5c\uc2e0 \ubc84\uc804\uc758 release file: https:\/\/github.com\/oracle\/opengrok\/releases<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">\uc124\uce58<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">\uc774 \ud6c4\ub85c\ub294 OpenGrok\uc774 \uc124\uce58 \ub418\ub294 \uc704\uce58\ub97c OPENGROK_DIR\ub85c \uc815\uc758 \ud558\uace0 \ub2e4\uc74c\uacfc \uac19\uc774 \ud658\uacbd \ubcc0\uc218\ub85c \uc124\uc815 \ud588\ub2e4\uace0 \uac00\uc815\ud55c\ub2e4.<\/p>\n\n\n\n<pre class=\"EnlighterJSRAW\" data-enlighter-language=\"shell\" data-enlighter-theme=\"\" data-enlighter-highlight=\"\" data-enlighter-linenumbers=\"\" data-enlighter-lineoffset=\"\" data-enlighter-title=\"\" data-enlighter-group=\"\">export OPENGROK_DIR=\/var\/opt\/opengrok<\/pre>\n\n\n\n<p class=\"wp-block-paragraph\">\uc124\uce58\ud560 \ub514\ub809\ud1a0\ub9ac\uc640 \ud558\uc704 \ub514\ub809\ud1a0\ub9ac\ub97c \ub9cc\ub4e4\uc5b4 \uc8fc\uace0 \uc18c\uc720\uc790 \uad8c\ud55c\uc744 $USER, \uadf8\ub8f9 \uad8c\ud55c\uc744 tomcat\uc73c\ub85c \uc124\uc815\ud55c \ub2e4\uc74c, \ubc30\ud3ec \ud30c\uc77c\uc758 \uc555\ucd95\uc744 \ud480\uc5b4\uc900\ub2e4. (&lt;version&gt; \ubd80\ubd84\uc740 \uc54c\ub9de\uc740 \uac12\uc73c\ub85c \ub300\uccb4)<\/p>\n\n\n\n<pre class=\"EnlighterJSRAW\" data-enlighter-language=\"shell\" data-enlighter-theme=\"\" data-enlighter-highlight=\"\" data-enlighter-linenumbers=\"\" data-enlighter-lineoffset=\"\" data-enlighter-title=\"\" data-enlighter-group=\"\">mkdir -p $OPENGROK_DIR\/{src, data, dist, etc, log}\nsudo chown $USER:tomcat -R $OPENGROK_DIR\ntar -C $OPENGROK_DIR\/dist --strip-components=1 -xzf opengrok-&lt;version>.tar.gz<\/pre>\n\n\n\n<h2 class=\"wp-block-heading\">Deployment<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">Tomcat9\uc744 \uc2e4\ud589\ud55c \uc0c1\ud0dc\uc5d0\uc11c http:\/\/localhost:8080\/manager\/html\ub85c \uc811\uadfc\ud574\uc11c deploy -&gt; WAR file to deploy -&gt; Choose File \ubc84\ud2bc\uc744 \uc120\ud0dd\ud558\uace0 $OPENGROK_DIR\/dist\/lib\/source.war \uacbd\ub85c\ub97c \ucc3e\uc740 \ub2e4\uc74c Deploy \ubc84\ud2bc\uc744 \ub204\ub978\ub2e4.<\/p>\n\n\n\n<figure class=\"wp-block-image size-large\"><img loading=\"lazy\" decoding=\"async\" width=\"668\" height=\"86\" src=\"https:\/\/litcoder.com\/wp-content\/uploads\/2020\/08\/img_0003-1.jpg\" alt=\"\" class=\"wp-image-2548\" srcset=\"https:\/\/litcoder.com\/wp-content\/uploads\/2020\/08\/img_0003-1.jpg 668w, https:\/\/litcoder.com\/wp-content\/uploads\/2020\/08\/img_0003-1-300x39.jpg 300w, https:\/\/litcoder.com\/wp-content\/uploads\/2020\/08\/img_0003-1-624x80.jpg 624w\" sizes=\"auto, (max-width: 668px) 100vw, 668px\" \/><\/figure>\n\n\n\n<h2 class=\"wp-block-heading\">Indexing<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">\ubd84\uc11d \ud560 source code\ub97c $OPENGROK_DIR\/<strong>src<\/strong>\uc5d0 \ubc1b\uc544 \ub454 \ud6c4 \ub2e4\uc74c\uc758 \ucee4\ub9e8\ub4dc\ub85c indexing\uc744 \uc644\ub8cc\ud558\uba74 \ubaa8\ub4e0 \uc900\ube44\uac00 \uc644\ub8cc\ub41c\ub2e4.<\/p>\n\n\n\n<pre class=\"EnlighterJSRAW\" data-enlighter-language=\"shell\" data-enlighter-theme=\"\" data-enlighter-highlight=\"\" data-enlighter-linenumbers=\"\" data-enlighter-lineoffset=\"\" data-enlighter-title=\"\" data-enlighter-group=\"\">java \\\n    -Djava.util.logging.config.file=$OPENGROK_DIR\/etc\/logging.properties \\\n    -jar $OPENGROK_DIR\/dist\/lib\/opengrok.jar \\\n    -c \/usr\/local\/bin\/ctags \\\n    -s $OPENGROK_DIR\/src -d $OPENGROK_DIR\/data -H -P -S -G \\\n    -W $OPENGROK_DIR\/etc\/configuration.xml -U http:\/\/localhost:8080\/source<\/pre>\n\n\n\n<p class=\"wp-block-paragraph\">Source code\uac00 \uc5c5\ub370\uc774\ud2b8 \ub420 \ub54c \ub9c8\ub2e4 indexing\uc744 \ud574 \uc8fc\uc5b4\uc57c \ud558\ub294\ub370 \ucee4\ub9e8\ub4dc\uac00 \ub108\ubb34 \uae38\uc5b4\uc11c \ubcf5\uc7a1\ud558\ub2c8\uae4c bin directory\ub97c \ub9cc\ub4e4\uace0 \uc5ec\uae30\uc5d0 index.sh\ub77c\ub294 \uc774\ub984\uc73c\ub85c shell script\ub97c \ub9cc\ub4e4\uc5b4\uc11c \ub123\uc5b4 \uc8fc\uc5c8\ub2e4.<\/p>\n\n\n\n<pre class=\"EnlighterJSRAW\" data-enlighter-language=\"shell\" data-enlighter-theme=\"\" data-enlighter-highlight=\"\" data-enlighter-linenumbers=\"\" data-enlighter-lineoffset=\"\" data-enlighter-title=\"\" data-enlighter-group=\"\">mkdir $OPENGROK_DIR\/bin\nchmod +x index.sh\n$OPENGROK_DIR\/bin\/index.sh<\/pre>\n\n\n\n<h2 class=\"wp-block-heading\">Access<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">indexing \uae4c\uc9c0 \ub2e4 \ub418\uc5c8\uc73c\uba74 http:\/\/localhost:8080\/source\uc5d0 \uc811\uadfc\ud558\uc5ec source code\ub97c browsing \ud560 \uc218 \uc788\ub2e4. Localhost\uac00 \uc544\ub2cc \uc678\ubd80\uc5d0\uc11c \uc811\uadfc\uc744 \ud5c8\uc6a9 \ud558\ub824\uba74 tomcat\uc758 \ud658\uacbd\uc744 \ubcc0\uacbd\ud574 \uc8fc\uba74 \ub41c\ub2e4. (\uad00\ub828 \ub0b4\uc6a9\uc740 \uc778\ud130\ub137\uc5d0\uc11c \uc5b4\ub835\uc9c0 \uc54a\uac8c \ucc3e\uc744 \uc218 \uc788\ub2e4)<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">\ucc38\uace0: universal-ctags<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">Ubuntu\uc5d0\uc11c apt\ub85c \uc124\uce58 \ud560 \uc218 \uc788\ub294 ctags\ub294 Exuberant ctags\uc774\uc9c0\ub9cc OpenGrok\uc740 Universla-ctags\ub97c \uc694\uad6c\ud55c\ub2e4. \ub2e4\uc74c\uc758 \ubc29\ubc95\uc73c\ub85c \ucf54\ub4dc\ub97c \ucef4\ud30c\uc77c \ud558\uace0 \/usr\/local\/bin\uc5d0 \uc124\uce58\ud574\uc11c \uae30\uc874\uc758 \/usr\/bin\/ctags \uacbd\ub85c\uc640 \ucda9\ub3cc\ud558\uc9c0 \uc54a\ub3c4\ub85d \ud574\uc900\ub2e4.<\/p>\n\n\n\n<pre class=\"EnlighterJSRAW\" data-enlighter-language=\"raw\" data-enlighter-theme=\"\" data-enlighter-highlight=\"\" data-enlighter-linenumbers=\"\" data-enlighter-lineoffset=\"\" data-enlighter-title=\"\" data-enlighter-group=\"\">git clone git@github.com:universal-ctags\/ctags.git\ncd ctags\nautogen.sh\n.\/configure --prefix=\/usr\/local\nmake\nsudo make install\n\/usr\/local\/bin\/ctgas --version<\/pre>\n\n\n\n<p class=\"wp-block-paragraph\"> <\/p>\n","protected":false},"excerpt":{"rendered":"<p>\ud55c \ub54c \uac11\uc790\uae30 \ubc30\ud3ec\ud558\ub358 \uc11c\ubc84\uac00 \uc5c6\uc5b4\uc838\uc11c \ud639\uc2dc\ub098 \ud558\ub294 \uac71\uc815\uc5d0 \ubc30\ud3ec\ud30c\uc77c\uc744 \ub2e4\uc6b4\ub85c\ub4dc \ubc1b\uc544 \ub450\uae30\uae4c\uc9c0 \ud588\ub358 OpenGrok project\uac00 \ub2e4\ud589\ud788 Oracle\uc758 GitHub \ub0b4\uc5d0 \uc790\ub9ac\ub97c \uc7a1\uace0 \uc798 \uafb8\uc900\ud788 \uc5c5\ub370\uc774\ud2b8 \ub418\uace0 \uc788\ub2e4. \uc608\uc804\uc5d0 \uc791\uc131\ud588\ub358 OpenGrok \uc124\uce58\ub97c \uc704\ud55c \uae00\ub4e4\uc740 \ub108\ubb34 \uc624\ub798\ub418\uc5b4\uc11c \uc798 \ub9de\uc9c0 \uc54a\ub294 \uac83\ub3c4 \uc788\uace0 \ud574\uc11c \ucd5c\uadfc \ubc84\uc804\uacfc \ud658\uacbd\uc744 \uae30\uc900\uc73c\ub85c \ub2e4\uc2dc \uc124\uce58 \uacfc\uc815\uc744 \uc815\ub9ac\ud588\ub2e4. \uc774 \ud3ec\uc2a4\ud305\uc740 \uc798 \uc791\uc131\ub41c \ud504\ub85c\uc81d\ud2b8\uc758 \ubb38\uc11c\uc778 [&hellip;]<\/p>\n","protected":false},"author":2,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"_import_markdown_pro_load_document_selector":0,"_import_markdown_pro_submit_text_textarea":"","_jetpack_newsletter_access":"","_jetpack_dont_email_post_to_subs":false,"_jetpack_newsletter_tier_id":0,"_jetpack_memberships_contains_paywalled_content":false,"_jetpack_feature_clip_id":0,"_jetpack_memberships_contains_paid_content":false,"footnotes":"","jetpack_post_was_ever_published":false},"categories":[6],"tags":[238,90,239,127,138,240],"class_list":["post-2549","post","type-post","status-publish","format-standard","hentry","category-tools","tag-ctags","tag-opengrok","tag-openjdk","tag-tomcat","tag-ubuntu","tag-universal-ctags"],"jetpack_sharing_enabled":true,"jetpack-related-posts":[{"id":621,"url":"https:\/\/litcoder.com\/?p=621","url_meta":{"origin":2549,"position":0},"title":"OpenGrok \uc124\uce58 \ube68\ub9ac \ud558\uae30","author":"litcoder","date":"2013\ub144 3\uc6d4 13\uc77c","format":false,"excerpt":"\uc9c0\ub09c\ubc88 OpenGrok \uc124\uce58 \uad00\ub828 \ud3ec\uc2a4\ud305 \uc774\ud6c4 OpenGrok\uc744 \uc124\uce58\ud560 \uae30\ud68c\uac00 \uba87 \ubc88 \ub354 \uc788\uc5c8\ub294\ub370, Source \uacbd\ub85c\ub97c \uc81c\uc678\ud55c \ub098\uba38\uc9c0 \uc124\uc815\ub4e4\uc744 \uae30\ubcf8\uac12\uc73c\ub85c \uc0ac\uc6a9\ud558\ub2c8 \ud6e8\uc52c \uc124\uce58 \ud558\uae30\uac00 \uac04\ud3b8\ud588\ub2e4. \uc5ec\uae30\uc5d0\ub294 source\ub97c \uc81c\uc678\ud55c \ub098\uba38\uc9c0 \uc124\uc815\uc744 \uae30\ubcf8\uc73c\ub85c \uc0ac\uc6a9\ud574\uc11c \uc57d\uac04\uc758 \uc218\uc815\uc73c\ub85c \uc124\uce58 \ud558\ub294 \ubc29\ubc95\uc744 \uc124\uba85\ud55c\ub2e4. 2017\ub144 12\uc6d4 13\uc77c : Ubuntu16.04 LTS\ub97c \uae30\uc900\uc73c\ub85c \uc218\uc815\ud568. \uc124\uce58\ud658\uacbd Ubuntu 16.04 LTS \ud544\uc694\ud55c\u2026","rel":"","context":"&quot;Linux&quot;\uc5d0\uc11c","block_context":{"text":"Linux","link":"https:\/\/litcoder.com\/?cat=4"},"img":{"alt_text":"","src":"","width":0,"height":0},"classes":[]},{"id":666,"url":"https:\/\/litcoder.com\/?p=666","url_meta":{"origin":2549,"position":1},"title":"OpenGrok 0.11.1","author":"litcoder","date":"2013\ub144 5\uc6d4 1\uc77c","format":false,"excerpt":"Update 2020\ub144 12\uc6d4 26\uc77c.\ub2e4\ud589\ud788 OpenGrok project\ub294 \uc0c8 \uc8fc\uc778\uc744 \uc798 \ub9cc\ub098 GitHub(https:\/\/github.com\/oracle\/opengrok)\uc5d0\uc11c \ubc30\ud3ec\ub418\uace0 \uc788\uc5b4, \uc544\ub798\uc758 \ub0b4\uc6a9\uc740 \ub354 \uc774\uc0c1 \uc720\ud6a8\ud558\uc9c0 \uc54a\uc2b5\ub2c8\ub2e4. GitHub\ub85c \ubd80\ud130 \ucd5c\uc2e0 \ubc84\uc804\uc744 \uc124\uce58\ud558\ub294 \ubc29\ubc95\uc740 OpenGrok \ucd5c\uc2e0\ubc84\uc804 \uc124\uce58\ud558\uae30\ub97c \ucc38\uace0\ud558\uc138\uc694. \uc5b8\uc81c \ubd80\ud134\uac00 Oracle\uc5d0\uc11c OpenGrok page\uac00 \uc5c6\uc5b4\uc84c\ub2e4.GitHub\uc5d0 source\ub85c \ubc30\ud3ec\ud558\ub294 \uacf3\uc740 \uc788\ub294\ub370 \ube4c\ub4dc\ub41c \ubc84\uc804\uc5d0 \ub300\ud55c \ub9c1\ud06c\ub97c \ucc3e\uae30 \ud798\ub4e4\uc5b4\uc11c \uc608\uc804\uc5d0 \ubc1b\uc544 \ub450\uc5c8\ub358 0.11.1 version\uc758\u2026","rel":"","context":"&quot;Linux&quot;\uc5d0\uc11c","block_context":{"text":"Linux","link":"https:\/\/litcoder.com\/?cat=4"},"img":{"alt_text":"","src":"","width":0,"height":0},"classes":[]},{"id":563,"url":"https:\/\/litcoder.com\/?p=563","url_meta":{"origin":2549,"position":2},"title":"OpenGrok \uc124\uce58","author":"litcoder","date":"2013\ub144 3\uc6d4 9\uc77c","format":false,"excerpt":"OpenGrok\uc744 \uc124\uce58\ud558\ub294 \uac00\uc7a5 \uac04\ub2e8\ud55c \ubc29\ubc95\uc740 tomcat5~6 \uc0ac\uc774\uc758 \ubc84\uc804\uc744 \uc0ac\uc6a9\ud558\uace0, \uc124\uce58\ud558\ub294 \uc704\uce58\ub97c \/var\/opengrok \uc73c\ub85c \uc815\ud558\ub294 \uac83\uc774\ub2e4. \uc774\ub807\uac8c \ud558\uba74 \ubcc4\ub3c4\uc758 \uc218\uc815\uc5c6\uc774 \uac70\uc758 \uadf8\ub300\ub85c OpenGrok\uc744 \uc0ac\uc6a9\ud560 \uc218 \uc788\ub2e4. (OpenGrok \uc124\uce58 \ube68\ub9ac \ud558\uae30 \ucc38\uc870) \uc774 posting\uc5d0\uc11c\ub294 Source\ub97c <YOUR_SOURCE_REPOSITORY_TOP> \uacbd\ub85c \uc544\ub798\uc5d0 \uac01 project\ubcc4\ub85c \ub530\ub85c \ubcf4\uad00\ud558\uace0, <YOUR_HOME_DIRECTORY>\/opengrok \uacbd\ub85c \uc544\ub798\uc5d0 OpenGrok\uacfc \uad00\ub828\ub41c file\ub4e4\uc744 \ubcf4\uad00\ud558\ub294 \uc0c1\ud669\uc744 \uac00\uc815\ud558\uace0 \uc124\uba85\ud55c\ub2e4.\u2026","rel":"","context":"&quot;Linux&quot;\uc5d0\uc11c","block_context":{"text":"Linux","link":"https:\/\/litcoder.com\/?cat=4"},"img":{"alt_text":"OpenGrok ScreenShot","src":"https:\/\/i0.wp.com\/litcoder.com\/wp-content\/uploads\/2013\/03\/Screenshot-from-2013-03-09-232044_opengrok-300x241.png?resize=350%2C200","width":350,"height":200},"classes":[]},{"id":718,"url":"https:\/\/litcoder.com\/?p=718","url_meta":{"origin":2549,"position":3},"title":"PlantUML war file \uc124\uce58","author":"litcoder","date":"2013\ub144 9\uc6d4 16\uc77c","format":false,"excerpt":"\uadf8\ub3d9\uc548 UML\uc744 \uadf8\ub824\uc57c\ud560 \ud544\uc694\uac00 \uc788\uc744\ub54c StarUML\uc744 \uc368\uc654\ub294\ub370, Windows\ub9cc \uc9c0\uc6d0\ud558\ub294 software\ub77c\ub294 \ud55c\uacc4\ub3c4 \uc788\uace0 \ud574\uc11c \uc5bc\ub9c8 \uc804 \ubd80\ud130\ub294 \uc6b0\uc5f0\ud788 \uc54c\uac8c\ub41c PlantUML\uc744 \uc0ac\uc6a9\ud558\uace0 \uc788\ub2e4. \uc774 software\ub294 \ub9c8\uce58 LaTex \ucc98\ub7fc text\ub85c UML\uc744 \uadf8\ub9ac\uae30 \uc704\ud55c description\uc744 \uc791\uc131\ud558\uba74 \uc774\ub97c \uae30\ubc18\ud574\uc11c UML\uc744 \uadf8\ub824\uc900\ub2e4. \ubb38\ubc95\ub3c4 \uadf8\ub2e4\uc9c0 \uc5b4\ub835\uc9c0 \uc54a\uace0 \uc9c1\uad00\uc801\uc774\uc5b4\uc11c \uc0ac\uc6a9\ud558\uae30\ub3c4 \uc26c\uc6b4 \ud3b8\uc774\ub2e4. \uc791\uc131\ud55c text\ub97c UML\ub85c \uadf8\ub9ac\uae30 \uc704\ud55c client\u2026","rel":"","context":"&quot;Linux&quot;\uc5d0\uc11c","block_context":{"text":"Linux","link":"https:\/\/litcoder.com\/?cat=4"},"img":{"alt_text":"","src":"https:\/\/i0.wp.com\/litcoder.com\/wp-content\/uploads\/2013\/08\/SC_plantuml_server_page.png?resize=350%2C200&ssl=1","width":350,"height":200,"srcset":"https:\/\/i0.wp.com\/litcoder.com\/wp-content\/uploads\/2013\/08\/SC_plantuml_server_page.png?resize=350%2C200&ssl=1 1x, https:\/\/i0.wp.com\/litcoder.com\/wp-content\/uploads\/2013\/08\/SC_plantuml_server_page.png?resize=525%2C300&ssl=1 1.5x, https:\/\/i0.wp.com\/litcoder.com\/wp-content\/uploads\/2013\/08\/SC_plantuml_server_page.png?resize=700%2C400&ssl=1 2x"},"classes":[]},{"id":2965,"url":"https:\/\/litcoder.com\/?p=2965","url_meta":{"origin":2549,"position":4},"title":"Docker\ub85c OpenGrok \uc124\uce58","author":"litcoder","date":"2021\ub144 3\uc6d4 14\uc77c","format":false,"excerpt":"\uc798 \uc4f0\uace0 \uc788\ub358 OpenGrok \uc11c\ubc84\uac00 \uac11\uc790\uae30 \ub9db\uc774 \uac00\ub294 \ubc14\ub78c\uc5d0 \ubd80\ub7b4\ubd80\ub7b4 \ub300\uc548\uc744 \ucc3e\uc544\uc57c \ud588\ub294\ub370 \ub9c8\ub545\ud55c \uc11c\ubc84\uac00 \uc5c6\uc5b4\uc11c \ub85c\uceec \uba38\uc2e0\uc5d0 Docker\ub85c \uc124\uce58\ud558\ub294 \ubc29\ubc95\uc744 \ucc3e\uc544 \ubcf4\uc558\ub2e4. \uc5ec\uae30 \uc18c\uac1c\ub41c \ub0b4\uc6a9\uc740 Docker Hub\uc5d0\uc11c \uc790\uc138\ud55c \uc124\uba85\uc744 \ucc3e\uc744 \uc218 \uc788\ub2e4. Docker\uac00 \uc124\uce58\ub418\uc5b4 \uc788\ub2e4\uba74 command\ucc3d\uc5d0\uc11c \ub2e4\uc74c\uc758 \uba85\ub839\uc73c\ub85c OpenGrok docker\ub97c pull\ud55c\ub2e4. docker pull opengrok\/docker Pulling\uc774 \ub05d\ub098\uba74 \ubaa9\uc801\uc5d0 \uc18c\uc2a4\uc640 indexing\uacb0\uacfc\uac00\u2026","rel":"","context":"&quot;Linux&quot;\uc5d0\uc11c","block_context":{"text":"Linux","link":"https:\/\/litcoder.com\/?cat=4"},"img":{"alt_text":"","src":"","width":0,"height":0},"classes":[]},{"id":1752,"url":"https:\/\/litcoder.com\/?p=1752","url_meta":{"origin":2549,"position":5},"title":"ClearLinux\uc5d0 Tomcat \uc124\uce58\ud558\uae30","author":"litcoder","date":"2019\ub144 3\uc6d4 11\uc77c","format":false,"excerpt":"2019\ub144 3\uc6d4 \ud604\uc7ac, Clear Linux\uc5d0\uc11c\ub294 Tomcat\uc774 bundle\ub85c \uc81c\uacf5\ub418\uc9c0 \uc54a\uae30 \u00a0\ub54c\ubb38\uc5d0 \uc218\ub3d9\uc73c\ub85c \uc124\uce58\ud574\uc57c \ud55c\ub2e4. \uc774 \ud3ec\uc2a4\ud2b8\ub294 Clear Linux\uc5d0 \uc218\ub3d9\uc73c\ub85c Tomcat\uc744 \uc124\uce58\ud558\uae30 \uc704\ud55c \uacfc\uc815\uc5d0 \uad00\ud55c \uac83\uc774\ub2e4. Java Runtime \uc124\uce58 Tomcat\uc744 \uc2e4\ud589\ud558\uae30 \uc704\ud574\uc11c\ub294 Java runtime\uc774 \uc2dc\uc2a4\ud15c\uc5d0 \uc124\uce58 \ub418\uc5b4 \uc788\uc5b4\uc57c \ud55c\ub2e4. \ub9cc\uc57d \uc5c6\ub2e4\uba74 \ub2e4\uc74c \uba85\ub839\uc5b4\ub85c \uc124\uce58\ud574 \uc900\ub2e4. $ sudo swupd bundle-add java-runtime Starting download\u2026","rel":"","context":"&quot;Linux&quot;\uc5d0\uc11c","block_context":{"text":"Linux","link":"https:\/\/litcoder.com\/?cat=4"},"img":{"alt_text":"","src":"https:\/\/i0.wp.com\/litcoder.com\/wp-content\/uploads\/2019\/01\/sc_tomcat_versions.png?resize=350%2C200&ssl=1","width":350,"height":200,"srcset":"https:\/\/i0.wp.com\/litcoder.com\/wp-content\/uploads\/2019\/01\/sc_tomcat_versions.png?resize=350%2C200&ssl=1 1x, https:\/\/i0.wp.com\/litcoder.com\/wp-content\/uploads\/2019\/01\/sc_tomcat_versions.png?resize=525%2C300&ssl=1 1.5x, https:\/\/i0.wp.com\/litcoder.com\/wp-content\/uploads\/2019\/01\/sc_tomcat_versions.png?resize=700%2C400&ssl=1 2x, https:\/\/i0.wp.com\/litcoder.com\/wp-content\/uploads\/2019\/01\/sc_tomcat_versions.png?resize=1050%2C600&ssl=1 3x, https:\/\/i0.wp.com\/litcoder.com\/wp-content\/uploads\/2019\/01\/sc_tomcat_versions.png?resize=1400%2C800&ssl=1 4x"},"classes":[]}],"jetpack_featured_media_url":"","_links":{"self":[{"href":"https:\/\/litcoder.com\/index.php?rest_route=\/wp\/v2\/posts\/2549","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/litcoder.com\/index.php?rest_route=\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/litcoder.com\/index.php?rest_route=\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/litcoder.com\/index.php?rest_route=\/wp\/v2\/users\/2"}],"replies":[{"embeddable":true,"href":"https:\/\/litcoder.com\/index.php?rest_route=%2Fwp%2Fv2%2Fcomments&post=2549"}],"version-history":[{"count":9,"href":"https:\/\/litcoder.com\/index.php?rest_route=\/wp\/v2\/posts\/2549\/revisions"}],"predecessor-version":[{"id":3652,"href":"https:\/\/litcoder.com\/index.php?rest_route=\/wp\/v2\/posts\/2549\/revisions\/3652"}],"wp:attachment":[{"href":"https:\/\/litcoder.com\/index.php?rest_route=%2Fwp%2Fv2%2Fmedia&parent=2549"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/litcoder.com\/index.php?rest_route=%2Fwp%2Fv2%2Fcategories&post=2549"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/litcoder.com\/index.php?rest_route=%2Fwp%2Fv2%2Ftags&post=2549"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}