2016. 11. 2. 17:57

When you create a project on Gitlab, you have to set ssh key on it.

Let's see how to set on the page.


1. Create public SSH Key

 - by git bash

 - by PuttyGen

   1) Download PuttyGen

   2) Click Generate button and rolling mouse on the application

   3) Copy the SSH Key on the red box (public key)

2. Register SSH Key on GitLab

  Move to "Profile Settings" page

"Click SSH Keys" Link

Paste the SSH Key that you copied on the textbox that it has been created


※ PrivateKey has to be kept for push and pull command. In SourceTree, PrivateKey can be set as below.




Posted by CoolDragon
2016. 11. 2. 15:09

A few years ago, I tried to set up Jenkins on Windows server for projects written in c#. However, I've almost forgotten to use them. So I am going to build a deployment system that uses Git and Jenkins.


Step)

- [Jenkins] Installation on Window

- [Jenkins] Configuration

- [Jenkins] Build source code

- [Jenkins] Deployment


Here's the first step.


1) Download

https://jenkins.io/

When you unzip the downloaded file, there is an install file named "jenkins.msi".


2) Install

2.1) Wizard

You'd better change install directory that does not include space.


2.2) Jenkins

After installation, a web browser shows up and, keep setting basic configurations of Jenkins.

Customize Jenkins

- Install suggested plugins: automatically install plugins

- Select plugins to install: manually install plugins


Completed install of Jenkins

If you want to change the basic port(8080), it can be changed to "C:\Jenkins\jenkins.xml" file, and Jenkins service must restart.


※ If you want to use git, install git on the same server.

Posted by CoolDragon
2015. 9. 2. 23:05

잡설

아무리 정형화되어있는 사이트를 쉽게 뽑아 내기 위해서 워드프레스가 사용된다지만 내가 작업한 사이트보다 더 깔끔한 UI를 제공하는것 같다. 

하기사 돈주고 파는 테마(Theme)도 있으니 어느정도의 퀄리티는 보장하지 않을까 싶다. 조금의 자괴감이 들지만.. 저런 테마를 만들기 위해서 노력한 공과 시간이 있었겠지 라고 스스로를 위로 한다. ㅜㅜ


Search Themes

테마는 기본 테마가 설치 당시 워드프레스 설치 당시 존재하며 그 외에 다른 테마는 Themes에서 찾아보고 맘에 드는 것을 다운로드 받는다. (무료와 유료가 있습니다.)

Add New Theme을 통하여 쉽게 추가를 할 수 있는 것으로 알고 있으나, 본인은 VirtualBox를 사용해서인지 FTP를 통한 적용을 실패하여 수동으로 테마 파일을 다운로드 받고 해당 경로로 복사해주는 작업을 하였다. (본인 서버의 테마의 경로는 /opt/lampp/htdocs/wordpress/wp-content/themes/ 이며, 서버를 어떻게 설치하고 설정하냐에 따라 경로는 달라질 수 있다.)

그 후 Appearance > Themes메뉴를 보면 아래와 같이 기존 테마(Twenty thirteen, Twenty foruteen, Twenty fifteen)와 함께 새로 다운로드 받은 테마(OpenStrap) 같이 나타나는 것을 볼 수 있다. 마우스를 테마위에 hover를 하게되면 해당테마로 적용할 것인지 여부를 묻고 클릭하게되면 선택한 테마로 적용이 된다.


후기

테마 변경은 사실 별로 대단할게 없다. '다운로드 > 테마 디렉토리로 복사 > 선택' 이것이 전부이다. 실제 테마를 선택후 Customizing의 작업이 진짜 작업이지 않을까 싶다.

Posted by CoolDragon
2015. 9. 2. 01:51

잡설

얼마전에 채용 인터뷰를 보는데 대충 이런 질문이 하나 있었다.

면접관 : "CMS에 대한 경험 있어?"

나 : "CMS가 뭔가?"

면접관 : "Content Management System라고 WordPress같은거.."

나 : "아! 그거 안해봤다. 근데 그거 개발은 아니고 Admin 사이트에서 필요한 거 설정하면 자동으로 사이트를 만들어 주는 것으로 알고 있다."

그리고 여럿 채용공고를 보던 중 CMS와 관련된 제품(?)들이 생각보다 많은 것을 보고 놀랍기 까지 했다. (TYPO3, Magento, Drupal, Joomla)

암튼 이것이 동기부여가 되어  Wordpress는 어떻게 생성 사용하는지 알아보고자 한다.


Insall XAMPP

refer to install XAMPP


Download

Download .tar.gz — 6.2 MB

wget http://wordpress.org/latest.tar.gz

$ sudo tar xvzf latest.tar.gz -C /opt/lampp/htdocs   # unzip and copy into /opt/lampp/htdocs


Configuration

Open browser >> Put following the URL: http://192.168.xxx.xxx/wordprocess (refer to Create database and user for MySQL)

Put information of database that you've created > Submit

If you see the page below, you create 'wp-config.php' manually because your linux account doesn't have any permission.

$ sudo -i   # change root

cd /opt/lampp/htdocs/wordpress/

$ touch wp-config.php

$ sudo vi wp-config.php # and then paste the script

chown nobody:nogroup wp-config.php

chmod -R 777 wp-content # 이 명령어를 실행하지 않으면 theme 및 plugin 다운로드시 권한 문제로 오류가 난다. (더 좋은 대안은 무엇을까?)

$ exit

Put "Information needed"

Test

Login >> http://{IP Address}/wordpress/wp-admin/

After Login >> You can see Dashboard.

Open http://{IP Address}/wordpress/



후기

Wordpress 생성 과정중 'wp-config.php' 파일을 수동으로 생성을 하는 작업이 있는데 리눅스가 익숙치 않은 나는 수동작업 없이 자동으로 처리되게 하려면 무슨 권한 작업을 미리 설정해야 놓아야 하는지 잘 모르겠다. (알고 계신분들은 댓글로 좀 알려주시면 향후에 업데이트 하도록 하겠습니다.)

인스톨까지는 생각보다 쉬운데 이후 사이트 다운 구성을 하려면 사실 더 많은 시간과 노력이 필요하지 않을까 싶다.

Posted by CoolDragon
2015. 8. 31. 20:24

GitLab은  Private한 환경에서 git을 이용하여 개발 소스를 관리할 수 있게 도와준다. (쉽게 말하자면 Private GitHub이랄까...)


2014년 4월인가  GitLab을 수동으로 설치해 봤었는데 엄청 복잡하고 어렵게 어렵게 설치를 했는데

이렇게 간단하게 패키지로 설치 할 수 있는 방법이 있는 줄 몰랐다.

Install a GitLab CE Omnibus package on

 Check if your server meets the hardware requirements. GitLab packages are built for 64bit systems. For 32bit OS, consider alternative installation methods.

1. Install and configure the necessary dependencies

If you install Postfix to send email please select 'Internet Site' during setup. Instead of using Postfix you can also use Sendmail or configure a custom SMTP server. If you wish to use Exim, please configure it as an SMTP server.

On Centos 6 and 7, the commands below will also open HTTP and SSH access in the system firewall.

sudo apt-get install curl openssh-server ca-certificates postfix

2. Add the GitLab package server and install the package

curl https://packages.gitlab.com/install/repositories/gitlab/gitlab-ce/script.deb.sh | sudo bash
sudo apt-get install gitlab-ce
If you are not comfortable installing the repository through a piped script, you can find the entire script here.

Alternatively you can select and download the package manually and install using
dpkg -i gitlab-ce-XXX.deb

3. Configure and start GitLab

sudo gitlab-ctl reconfigure

4. Browse to the hostname and login

Username: root 
Password: 5iveL!fe


설치 후 환경설정 

# host와 port 설정

$ sudo vi /opt/gitlab/embedded/service/gitlab-rails/config/gitlab.yml

  gitlab:

    host: IP 또는 domain name

    port: 80


# external_url 설정

$ sudo vi /etc/gitlab/gitlab.rb

  external_url 'http://IP 또는 domain name'


# 적용

$ sudo gitlab-ctl reconfigure

$ sudo gitlab-ctl restart


결과

로그인 페이지

로그인 후

Email


GitLab에 SSH Key 생성 및 등록

$ cd ~/.ssh

$ ssh-keygen

cat ~/.ssh/id_rsa.pub  #내용 복사

복사한 내용을 Gitlab 사이트의 SSH Key 페이지를 통하여 등록


Git Project 생성 및 커밋

신규 프로젝트 생성


생성한 프로젝트명으로 git경로를 얻을 수 있으며, 그 이후 git golbal setup 및 create a new repository 작업을 통하여 리모트와 gitlab의 실제 repository를 연결할 수 있다.




Posted by CoolDragon
2015. 7. 18. 05:50

1. install NPM

> sudo apt-get install npm

> sudo npm update -g npm


2.install CLI

> sudo npm install -g grunt-cli


3. Create Gruntfile

> npm init # 명령어 실행 후 "package.json" 파일이 생성되고 "name" : "프로젝트명"이  "grunt"일 경우 다른 프로젝트명으로 변경한다.

> npm install grunt --save-dev

npm install grunt-contrib-concat --save-dev # concat 플러그인 설치 (여러 파일을 하나의 파일로 만들어준다)

> npm install grunt-contrib-watch --save-dev # watch 플러그인 설치(설정된 파일을 모니터링하여 변경사항이 있으면 바로 적용시켜준다)

> touch gruntfile.js

Grunt 주요 플러그인

  - uglify : JS 파일 병합 및 압축

  - concat : JS 파일 병합 

  - less, sass : less 또는 sass 파일을 css로 변환(?)

  - cssmin : css 파일 압축

  - imagemin : 이미지 파일 사이즈 감소


4. gruntfile.js Setting

module. exports = function(grunt) {


grunt.initConfig({

  concat: {

    js: {

      src: ['script/js1.js', 'script/js2.js', 'script/js3.js'],

      dest: 'dist/js/built.js',

    },

    css: {

      src: ['css/intro.js', 'css/project.js', 'css/outro.js'],

      dest: 'dist/css/built.js',

    },

  },

  watch: {

    scripts: {

      files: ['script/**/*.js'],

      tasks: ['concat:js'],

    },

    css: {

      files: ['css/**/*.css'],

      tasks: ['concat:css'],

    },

  },

});


grunt.loadNpmTasks('grunt-contrib-concat');

grunt.loadNpmTasks('grunt-contrib-watch');


grunt.registerTask('default', ['concat', 'watch']);

}


5. Execute

> grunt {TaskName}

> grunt

grunt.registerTask()의 첫번째 인자에 'default'로 지정하면 grunt 명령어 실행시 옵션 없이 두번째 인자 배열안의 항목들을 실행할 수 있다.

Posted by CoolDragon