62023  이전 다음

  • 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

Vagrant 로 쉽게 Kubernetes 환경을 구축해보자

필수 환경 :

Kubernetes 설치

Vagrant 로 이미 만들어놓은 환경을 가져다 쓰면 된다.
구성은 Virtualbox + CentOS7 + Kubernetes 로 되어있다.

  # git clone  https://github.com/zhato/kubernetes-centos7-vagrant.git

  # cd kubernetes-centos7-vagrant

  # vagrant up

Posted by zhato

댓글을 달아 주세요


:: IT/:: Programming 2016. 9. 19. 17:57

메인 사이트


라라벨 코리아 커뮤니티




쉽게 배우는 라라벨 5 프로그래밍


Posted by zhato

댓글을 달아 주세요

yo 는 root 로 실행하면 안됩니다.

일반 계정을 만들고 실행해야 하네요...

Posted by zhato

댓글을 달아 주세요


:: IT/:: Varnish 2015. 10. 28. 11:10
Posted by zhato

댓글을 달아 주세요


:: IT 2015. 9. 17. 16:13

PostgreSQL Addict


Keen IO



Posted by zhato

댓글을 달아 주세요



Appium is an open source test automation framework for use with native and hybrid mobile apps. It drives iOS and Android apps via the WebDriver JSON wire protocol.

As mobile apps become core to our operating infrastructure, agile development methodologies require automated testing to deliver. Appium provides a broad platform for testing both native and hybrid mobile apps on iOS and Android, enabling organizations to utilize a single testing tool to support their growing needs. While initially started as a tool for SauceLabs to help customers build a scalable, automated test environment, Appium has taken on a life of its own with a rapidly expanding, diverse developer community.



Docker has generated the kind of excitement rare for a rookie open source project. Its purpose is to enable the easy creation of lightweight, portable, self-sufficient containers from any application. The same container that a developer builds and tests on a laptop can run at scale, in production, on VMs, bare metal, OpenStack clusters, public clouds, and more.

Docker was started by a small, commercial firm known as dotCloud, but the project has grown roots and turned the heads of the big names, including Red Hat and Google. The level of portability delivered by Docker offers companies plenty of options for where their apps will run, while giving developers freedom of choice in the languages and tools used to build them.



Exercism is a collaborative educational tool for people learning programming languages. It was started by Katrina Owen, an instructor working at a small technical school in Colorado, in an effort to help her students learn more collaboratively. And it worked! She realized an immediate improvement in how quickly her students understood programming languages.

Katrina started Exercism to support her own classroom, but other students and educators quickly took notice and began contributing to and using the project. Exercism now supports 13 languages with more on the way, including Go, CoffeeScript, JavaScript, Java, Rust, and Erlang. The project is licensed under the GNU Affero General Public License.



Ghost is dedicated to one goal: publishing content on the Web. It's beautifully designed, completely customizable, and fully open source. It allows you to write and post your own blog, providing the tools to make it easy and even fun to do. It's simple, elegant, and designed so that you can spend less time messing with making your blog work and more time blogging.

While the current version of Ghost (as of this writing) is limited to single-user blogging, the platform is stable and growing rapidly. Ghost is free software released under the MIT License, among the least restrictive in use.



InfluxDB is a time-series, events, and metrics database. It's written in Go and has no external dependencies, which means that once you install it, there's nothing else to manage (in contrast to Redis, HBase, and so on). It's designed to be distributed and scale horizontally, but it can be useful even if you're running it on a single box. It also comes with a SQL-like query language designed to be used with time series and analytics.

As of this writing, InfluxDB is only three months old, with the first commit on Sept. 23, 2013.



OpenDaylight's objective is to provide a fully functional SDN platform that can be deployed directly without requiring other components. It's focused on building an open, standards-based SDN controller platform that is suitable for deployment in a variety of production network environments.

In addition to a modular controller framework, OpenDaylight is expected to include support for a number of standard and emerging SDN protocols, network services like virtualization and service insertion, well-defined application APIs, and data plane elements like physical device interfaces and virtual switch enhancements.



OpenIoT began as a research project partially funded by the European Commission with the goal of enabling a new range of open, large-scale, intelligent Internet of things applications using a cloud computing delivery model. The project focuses on the mobility aspects of Internet-connected objects (sensor networks) for energy-efficient orchestration of sensor data harvesting and data transmission into the cloud.

OpenIoT integrates ontologies and semantic structures in order to enable semantic interactions and interoperability between the various objects, which provides significant advancement over the existing syntactic interactions offered by GSN and AspireRFID projects.



Serverspec provides a simple approach to testing your server configurations independent of any configuration management tools. Using Serverspec, you can write RSpec tests for checking your servers' configuration. It tests your servers' actual state through SSH access, so you don't need to install agent software on your servers. You can use it in conjunction with any of the leading configuration management tools, including Puppet, Chef, CFEngine, and more.

Currently, Serverspec supports Red Hat-based OSes, Debian-based OSes, Gentoo, Solaris, and Darwin-based OSes.



Project Tox is a secure instant messaging and video chat application intended to replace AIM, Skype, and so on. It's no surprise that this project got major traction this year, given the constant drumbeat of NSA privacy violations.

Tox aims to be an easy-to-use, all-in-one communication platform for text, audio, and video chatting, with a commitment to full privacy backed by "leading class" encryption. Tox pledges that it will never harass users with ads or require users to pay for features.



XPrivacy is designed to prevent applications from leaking sensitive data. It can restrict the categories of data an application can access by feeding an app fake data or no data at all. Several data categories can be restricted, including contacts and locations. For example, if you restrict access to contacts for an application, XPrivacy will ensure an empty contact list will be sent.

XPrivacy does not revoke permissions, except access to the Internet and access to external storage, such as an SD card. It's a great solution for preventing data leakage without blocking access to an application entirely.

Honorable mention: Flight


Flight differs from other JavaScript frameworks in that it doesn't prescribe a particular approach to rendering or providing data to a Web application. It's agnostic to how requests are routed, which templating language you use, and even whether you render your HTML on the client or the server.

While some Web frameworks encourage developers to arrange their code around a prescribed model layer, Flight is organized around the existing DOM model with functionality mapped directly to DOM nodes. Flight likely isn't as easy to learn and use as some of the more popular JavaScript frameworks, such as Angular or Ember, but it provides enormous flexibility architecturally, which makes it suitable for building more complex applications.

Posted by zhato

댓글을 달아 주세요

CIDR to Range

:: IT/:: Programming 2014. 10. 16. 10:14

CIDR 을 Start ~ End 로 보여주는 코드를 작성했다.

서핑해서 찾아서 좀 수정했는데..

그럭저럭 잘 확인해준다...


function Usage() {

    global $argv;

    printf("Usage : php %s [CIDR]\n", $argv[0]);

    printf("ex) php %s\n", $argv[0]);



function cidrToRange($cidr) {

    $cidr = explode('/', $cidr);

    $ptnIpAddress = "/^([1-9]?\d|1\d\d|2[0-4]\d|25[0-5])\.([1-9]?\d|1\d\d|2[0-4]\d|25[0-5])\.([1-9]?\d|1\d\d|2[0-4]\d|25[0-5])\.([1-9]?\d|1\d\d|2[0-4]\d|25[0-5])$/";

    if (!preg_match($ptnIpAddress, $cidr[0]) || (int)$cidr[1] < 0 || (int)$cidr[1] > 32) {

        return false;


    $range = array();

    $range["start"] = long2ip(ip2long($cidr[0]) & (-1 << (32 - (int)$cidr[1])));

    $range["end"] = long2ip(ip2long($range["start"]) + pow(2, (32 - (int)$cidr[1])) - 1);

    $range["netmask"] = long2ip(-1 << (32 - (int)$cidr[1]));

    return $range;


$aRange = cidrToRange($argv[1]);

if (!$aRange) Usage();

foreach ($aRange as $key => $value) {

    printf("%-15s%-15s\n", $key, $value);



Posted by zhato

댓글을 달아 주세요

Posted by zhato

댓글을 달아 주세요

Nexus 4 공장 초기화

:: IT 2013. 5. 22. 18:00

준비 사항

1. 자신의 OS 버전에 맞는 Android SDK를 다운 받는다.
2. Nexus 4에 맞는
Android Image를 다운 받는다.


적당한 위치에 다운 받은 Android SDK 의 압축을 풀어 놓는다.

1. 1. 의 경로에 platform-tools 아래 다운 받은 Android Image 를 풀어 놓는다.
2. Nexus 4 의 전원을 끈다.
3. Fastboot 모드로 부팅한다. (안드로이드봇이 나올때까지 전원 버튼과 볼륨 다운키를 동시에 누르고 기다린다.)
4. PC와 USB로 연결한다.
5. Nexus 4 ADB Driver 설치

1) SDK Manager.exe 를 실행해서 "Tools > Android SDK Platform-tools" 를 선택해서 설치 한다.
2) 그러면 Google USB Driver 선택하는 창이 나온다. 선택해서 설치 누르면 설치된다.
3) 이 드라이버는 SDK 설치 경로에 저장되므로 드라이버 경로 물어보면 SDK 설치 경로로 지정해주면 된다.

6. 탐색기에서 2. 의 경로에서 "Shift + 마우스 오른쪽 버튼"을 누르고 "여기서 명령창 열기(W)"를 눌러 명령창을 실행한다.
7. 명령창이 실행되었으면 다음을 실행한다.

1) 언락
fastboot oem unlock

2) 모두 삭제!!
fastboot erase boot
fastboot erase cache
fastboot erase recovery
fastboot erase system
fastboot erase userdata

3) 부트로더 변경 및 이미지 설치 (파일명은 버전에 따라 변경될 수 있습니다.)
fastboot flash bootloader bootloader-mako-makoz10o.img
fastboot reboot-bootloader
fastboot -w update image-occam-jdq39.zip


그림도 넣고 멋지게 설명하고 싶었으나... 귀차니즘에 의해서 간략 설명으로 마무리 합니다.~~

Posted by zhato

댓글을 달아 주세요

<모토로라 아트릭스(Atrix) 공장 초기화 방법>

1. 아트릭스 전원단추(전원버튼,지문인식버튼)을 꾹 눌러 전원을 끕니다.
2. 완전히 꺼진 상태에서 화면의 왼쪽 위에 fast boot 라는 글자가 나올때까지 전원단추와 소리줄임(볼륨다운)단추을 같이 누릅니다.
3. 화면의 왼쪽 위에 fast boot 라는 글자가 나오면, 소리줄임버튼을 "Android Recovery"라는 글자가 나올때까지 누릅니다.
4. "Android Recovery"라는 글자가 나오면, 소리올림(볼륨업)단추를 누릅니다.
5. 화면에 삼각형안에 느낌표, 그 아래 "안드로보이"가 나옵니다.
소리줄임/올림단추를 같이 눌러 줍니다(진저브레드 판(버전)).
6. 그러면 화면에 차림표(메뉴)가 나오는데, 여기에서 "wipe data/factory reset"을 고르고,
전원버단추를 누르면(진저브레드 판), 화면이 바뀝니다.
7. 화면에서 소리줄임단추를 써, 아래에 있는 "yes -- delete all user data"를 고르고,
전원버단추를 누릅니다(진저브레드 판).
8. 다음 화면에서 노란색 글자들이 나오는데, 기다리다 보면 "reboot system now"라는 글귀가 나오면, 전원버단추를 누릅니다(진저브레드 판).
9. 다시시작되면 초기화가 끝난 상태가 됩니다.
10. 그럼 MOTOBLUR, Google 계정 등록...

Posted by zhato

댓글을 달아 주세요