ubuntu의 nginx package를 custom하기

nginx 패키지를 자신에 맞게 custom해야하는 경우가 발생한다.
설치 위치(Install Path), 패키지 명등을 변경해야하는 경우가 발생하는데 nginx-1.18.0 케이스에 대해서 아래와 같이 custom이 가능하다.
custom하는 방법을 간단하게 정리한다.

1. Package Build에 사용하는 파일 다운로드

https://packages.ubuntu.com/focal-updates/nginx-full

사이트에서 3가지 파일을 다운받는다.

ubuntu 개발용 chroot 시스템 만들기

ubuntu에 개발용 시스템을 만드는 방법을 정리한다.

개발 시스템을 구성하는 패키지 설치

# apt install -y debootstrap
# apt install -y schroot

 

개발용 시스템 구축을 위한 환경 파일 구성

# vi /etc/schroot/chroot.d/focal_x64.conf

-------------------------------------------------
[focal_x64]
description=Ubuntu 20.04.3 LTS x64
location=/home/develope/ubuntu_20_chroot
#personality=linux32
root-users=kinkist
type=directory
users=test
-------------------------------------------------

 

개발용 시스템을 구축할 디렉토리 생성

CentOS 6 개발용 chroot 시스템 만들기

시스템을 개발하다보면 시스템이 무척이나 지저분해진다.
또한 개발 시스템을 서비스에 투입하기에는 보안이 꺼려질 경우
아래와 같은 방법으로 기존 시스템에 영향을 주지 않는 방식으로
개발용 chroot 시스템을 구성할 수 있다.

일단 설치하려는 CentOS의 Release 파일을 다운로드 받아야한다.
내가 설치한 시스템은 CentOS 6.8 x86_64이므로 아래 URL에서
centos-release 파일을 다운받는다.
http://centos.mirror.cdnetworks.com/6.8/os/x86_64/Packages/

# wget http://centos.mirror.cdnetworks.com/6.8/os/x86_64/Packages/centos-release-6-8.el6.centos.12.3.x86_64.rpm

 

go 1.16 버전 이후의 go.mod 오류를 해결하기 위해 1.15 이하 버전 설정 변경 방법

go 1.16 부터 많은 부분이 변경되었다.

 

주된 것 중에 하나가 go.mod를 본격적으로 사용하기 시작했다는 것인데, 이것을 고민해서 하기에서 귀찮은 면이 있어

기존 방식대로 하려면 아래와 같이 설정한다.

go env -w GO111MODULE=auto

 

위 설정이 없으면 아래와 같은 오류가 와장창 뜬다.