Docker 기반 컨테이너 환경에서 systemctl명령어를 사용하게 되면, "Failed to get D-Bus connection"에러가 나오는 경우가 있습니다. 컨테이너 생성시 docker run --privileged --name container image /sbin/init 컨테이너를 생성시에 --privileged 옵션을 추가하고, /sbin/init 명령어로 컨테이너를 실행시킵니다. docker exec -it container /bin/bash 생성된 컨테이너에 bash쉘로 프로세스를 가동시켜서 접속하게 되면, 문제없이 systemctl 명령어를 사용할 수 있게 됩니다. Mac 환경에서서는 추가적으로 설정 맥에서는 버전에 따라서 추가적인 설정파일의 수정이 필요합니다. 위의 방법으로도 해결..
docker
ImageMagick 설치전 필수 패키지 설치 yum install php-pear php-devel gcc ImageMagick 설치 (1) 빌드 도구 설치 # yum groupinstall "Development Tools" # yum install kernel-devel kernel-headers 먼저 ImageMagick의 소스 파일을 다운로드하기 전에 ImageMagick에는 컴파일러 및 기타 필요한 개발 도구와 같은 개발 환경이 필요하므로 아래 명령을 사용하여 빌드 필수 도구를 설치해야 합니다. (2) 소스파일 다운로드 # yum install -y wget # wget https: // www.imagemagick.org / 다운로드 / ImageMagick.tar.gz (3) 압축해제 # ..
컨테이너 생성 컨테이너 생성 & 실행 docker run -d --privileged --name centos7-php8 centos:centos7 /sbin/init -d는 백그라운드로 실행 --privileged 와 /sbin/init 명령어는 나중에 systemctl 명령어를 사용할 때를 대비해서 설정 ( docker에서는 systemctl을 옵션없이 사용하면, 에러가 발생) centos:centos7 는 centos이름의 이미지를 사용하는데, 버전은 7버전을 사용 (이미지는 docker pull centos:centos7로 다운로드 하는 것이 가능하지만, 설치된 이미지가 없이 컨테이너를 생성하는 경우에 자동적으로 docker에서 이미지를 설치함) 컨테이너에 프로세스 실행 (접속) docker ex..
Linux는 centos기반의 환경에서 설치해볼려고 합니다. RPM을 이용한 설치를 하기위해서 centos 이미지를 통한, 컨테이너를 만들고 MySQL8.0를 설치할려 합니다. ※RPM : Red Hat 기반의 패키지 매니저 Docker 환경 CentOS7 버전을 이용한 컨테이너 실행 docker run -d --privileged --name mysql8.0 centos:centos7 /sbin/init 위의 옵션들을 짧게 설명하자면 -d : 백그라운드로 실행 --privaileged : systemctl을 사용하기 위한 추가 옵션 --name : 컨테이너 이름 centos:centos7 : centos 이미지를 사용하는데 버전을 7버전을 사용 /sbin/init : 사용할 명령어 컨테이너에 추가 프로..
nginx와 php 환경은 Docker을 이용해서 구축을 하고, DB는 AWS의 RDS의 서비스를 이용해서 연동하는 것을 해보겠습니다. 이번과정에는 AWS의 프리티어로 이용가능한 범위 내에서 사용하기 때문에, 사용 후에 인스턴스를 삭제하면 따로 비용은 청구되지 않습니다. 반대로, 삭제하지 않으면 ㅎㅎ;; EC2 인스턴스 생성 첫 번째로, AMI 선택에서 ubuntu 20.04 버전을 선택해줍니다. 인스턴스 유형 선택에서는 역시나 프리티어로 이용할 수 있는 t2.micro를 선택 검토 및 시작을 누르면, 키페어를 선택 및 생성하는 팝업이 나옵니다. SSH를 이용해서, 해당 EC2 인스턴스에 접속하기 위해서 필요한 비밀번호와 같은 역할을 하게 됩니다. SSH로 EC2에 접속하는 방법은, 아래의 링크에서 자세..
Dockerfile을 이용해서 Nginx 컨태이너를 실행해보려 합니다. 그리고, 기본 index.html을 변경하는 작업도 자동으로 실행할 수 있도록 변경해보겠습니다. 새로운 디렉토리 생성 # mkdir nginx # cd nginx index.html Dockerfile을 이용해서 Nginx 컨테이너 실행하기 Dockerfile FROM nginx COPY . /usr/share/nginx/html FROM nginx : nginx이미지 기반으로 실행 COPY . /usr/share/nginx/html : 현재 디렉토리 위치에 있는 파일을 /usr/share/nginx/html 폴더에 복사 nginx서버는 디폴트값으로 /usr/share/nginx/html 위치에 있는 index.html 파일을 보여주..