OMV(OpenMediaVault) 나스 서버[15]워드프레스 설치하기

반응형

    이번 포스팅에선 OpenMediaVault에 워드프레스를 설치하는 방법에 대해서 알아보도록 합시다. 이번 포스팅에서는 지난 포스팅에서 설치해 둔/사용했던 방법들을 거의 다 사용하기 때문에 혹시 워드프레스 설치 과정이 이해되지 않으시는 분들은 지난 포스팅을 한번 들러주세요.

     

    워드프레스는 오픈소스 설치형 블로그입니다. 아주 다양한 사이트에서 활용하고 있고 다양한 플러그인이 존재하기 때문에 원하는 대로 커스터 마이징하기 쉽다는 장점이 있습니다. 물론 워드프레스를 사용하는데 어느정도 익숙지 않으신 분들은 적응하는 시간이 필요하겠지만 익숙해지시면 티스토리나 네이버 블로그처럼 사용할 수 있죠.

    openmediavault 워드프레스 설치하는 방법
    openmediavault 워드프레스 설치하는 방법

    저 또한 현재 워드프레스 블로그를 이 티스토리 블로그와 병행하고 있습니다. 간간히 생각난 때마다 글을 쓰는 수준이긴 하지만 조금씩 분량을 늘려갈 예정이에요.

    블로그에 관심있으신 분들도 이번 기회에 워드프레스를 설치하면서 한번 사용해보세요.

    그럼 지금부터 OpenMediaVault에 워드프레스를 설치하는 방법에 대해 알아보도록 하겠습니다.

    (이번 포스팅부터는 제 본래 서버에서 진행하도록 하겠습니다.)

       

      1. 도커에 워드프레스 컨테이너 설치하기

      워드프레스 이미지 다운로드
      워드프레스 이미지 다운로드

      도커의 image 탭에서 wordpress를 검색하고 “Pull the image” 버튼을 눌러 다운로드 받아줍시다. 그리고 다운로드한 이미지를 클릭해 어떤 폴더를 바인딩해줘야 하는지 확인해봅시다.

      이미지 정보 확인
      이미지 정보 확인

      이미지 정보를 살펴보니 “/var/www/html” 폴더를 바인딩 해줘야 한다고 나와있네요.

      워드프레스 컨테이너 생성
      워드프레스 컨테이너 생성

      이제 컨테이너 탭으로 넘어와서 새로운 컨테이너를 추가해줍시다. 컨테이너의 이름을 원하시는 대로 설정하시고 wordpress 이미지를 할당해줍니다.

      컨테이너 볼륨 연결
      컨테이너 볼륨 연결 설정

      다음 공유 폴더에 “/var/www/html” 경로를 연결해줍시다.

      (연결한 폴더의 권한이 제대로 설정되어 있지 않으면 워드프레스 파일의 수정이 불가능합니다.혹시 권한 설정을 하는 방법을 모르시는 분들은 아래 포스팅을 확인해주세요.)

      워드프레스 네트워크 설정
      워드프레스 네트워크 설정

      그다음 네트워크 탭으로 넘어가서 직접 생성한 가상 네트워크를 할당한 뒤 적절한 ip를 할당해줍시다.

      재시작 정책 설정
      재시작 정책 설정

      그 다음 재시작 옵션을 “Always”로 설정한 뒤 컨테이너를 생성해줍시다.

       

      2. 워드프레스에 리버스 프록시 적용하기

      postiveemblem.tistory.com/219

       

      OMV(OpenMediaVault) 나스 서버[13]리버스 프록시, 가상호스트 설정하는 방법

      지난 포스팅에서 openmediavault에 nextcloud를 설치하는 부분까지 진행했죠. 이번 포스팅에서는 이전 포스팅에서 설치한 nginx proxy manager을 통해 도메인과 서브 도메인으로 리버스 프록시/가상 호스트

      postiveemblem.tistory.com

      이전에 했던 포스팅 중에 리버스 프록시를 등록하는 방법에 대해 알려드린 포스팅이 있었는데 해당 포스팅을 참고해서 진행하시면 됩니다. (바로 위 링크가 해당 포스팅입니다.)

      리버스 프록시 설정인증서 등록
      리버스 프록시 설정 및 인증서 등록

      저는 새로운 프록시를 생성해서 “wordpress.pomvtest.duckdns.org” 도메인에 워드프레스의 서버 내부 ip주소를 적어 넣어주고 http80포트로 설정했습니다. 위 방식으로 연결해도 ssl적용이 가능합니다.

      SSL탭으로 넘어가 신규 인증서를 등록하는 것 또한 잊지 않았구요.

       

      3. phpmyadmin으로 워드프레스 데이터베이스 추가하기

      postiveemblem.tistory.com/216

       

      OMV(OpenMediaVault) 나스 서버[10]phpmyadmin 설치하는 방법

      지난 포스팅에서는 Portainer의 사용법과 mariaDB를 설치하는 방법에 대해서 알려드렸었죠? 오늘은 지난번에 예고해드린 대로 phpmyadmin을 설치하는 방법에 대해서 알아볼까 합니다. phpmyadmin은 MariaDB,

      postiveemblem.tistory.com

      위 포스팅을 따라오셨던 분들이라면 도커에 phpmyadmin이 설치되어 있으실 겁니다.

      phpmyadmin 새로운 db 추가하기
      phpmyadmin 새로운 db추가하기

      Phpmyadmin에 접속하고 root 계정으로 로그인한 뒤 좌측의 “새로운”을 눌러 새로운 데이터베이스를 추가해줍시다.

      db 추가
      db 추가

      저는 “wordpress_test”라는 이름으로 생성했는데 원하시는 이름으로 생성하시면 됩니다.

       

      4. 워드프레스 config.php 파일 수정하기

      omv 공유폴더 권한 설정
      omv 공유폴더 권한 설정

      먼저 워드프레스 파일에 쓰기 권한을 추가해줍시다. Omv 컨트롤 패널의 “공유폴더 -> 접근 제어 목록”을 클릭해줍시다.

      권한 추가
      권한 추가하기

      그런 뒤 smb로 연결한 사용자 계정에 폴더의 쓰기 읽기 권한을 추가해줍시다. 공유 폴더를 선택하고 계정의 읽기/쓰기를 선택한 뒤 “파일과 디렉터리에 권한을 적용”을 활성화 한 뒤 적용하시면 됩니다.

      config sample 파일

      워드프레스 컨테이너의 폴더를 바인딩해준 공유폴더에 들어가시면 “wp-config-sample.php” 파일이 있습니다. 해당 파일의 이름을 “wp-config.php”로 변경해주세요. 그런 뒤 메모장이나 텍스트 에디터를 통해 “wp-config.php” 파일을 수정해줘야 합니다.

      <?php
      /**
       * The base configuration for WordPress
       *
       * The wp-config.php creation script uses this file during the
       * installation. You don't have to use the web site, you can
       * copy this file to "wp-config.php" and fill in the values.
       *
       * This file contains the following configurations:
       *
       * * MySQL settings
       * * Secret keys
       * * Database table prefix
       * * ABSPATH
       *
       * @link https://wordpress.org/support/article/editing-wp-config-php/
       *
       * @package WordPress
       */
      
       //https로 연결되게 끔 하는 코드
      define('FORCE_SSL_ADMIN', true);
      if ($_SERVER['HTTP_X_FORWARDED_PROTO'] == 'https')
      	$_SERVER['HTTPS']='on';
      
      // ** MySQL settings - You can get this info from your web host ** //
      
      define('FS_METHOD', 'direct');//파일 업데이트 오류 방지용
      
      /** The name of the database for WordPress */
      define( 'DB_NAME', '데이터베이스 이름' );//데이터베이스 이름
      
      /** MySQL database username */
      define( 'DB_USER', 'root' );//데이터베이스 루트계정
      
      /** MySQL database password */
      define( 'DB_PASSWORD', '비밀번호' );//데이터베이스 루트계정 비밀번호
      
      /** MySQL hostname */
      define( 'DB_HOST', '데이터베이스 주소' );//데이터 베이스 내부 네트워크 주소
      
      /** Database Charset to use in creating database tables. */
      define( 'DB_CHARSET', 'utf8' );
      
      /** The Database Collate type. Don't change this if in doubt. */
      define( 'DB_COLLATE', '' );
      
      /**#@+
       * Authentication Unique Keys and Salts.
       *
       * Change these to different unique phrases!
       * You can generate these using the {@link https://api.wordpress.org/secret-key/1.1/salt/ WordPress.org secret-key service}
       * You can change these at any point in time to invalidate all existing cookies. This will force all users to have to log in again.
       *
       * @since 2.6.0
       */
      //워드프레스의 데이터 암호화용 salt를 붙여넣는곳
      //여기서
      define('AUTH_KEY',         '');
      define('SECURE_AUTH_KEY',  '');
      define('LOGGED_IN_KEY',    '');
      define('NONCE_KEY',        '');
      define('AUTH_SALT',        '');
      define('SECURE_AUTH_SALT', '');
      define('LOGGED_IN_SALT',   '');
      define('NONCE_SALT',       '');
      //여기까지
      /**#@-*/
      
      /**
       * WordPress Database Table prefix.
       *
       * You can have multiple installations in one database if you give each
       * a unique prefix. Only numbers, letters, and underscores please!
       */
      $table_prefix = 'wp_';
      
      /**
       * For developers: WordPress debugging mode.
       *
       * Change this to true to enable the display of notices during development.
       * It is strongly recommended that plugin and theme developers use WP_DEBUG
       * in their development environments.
       *
       * For information on other constants that can be used for debugging,
       * visit the documentation.
       *
       * @link https://wordpress.org/support/article/debugging-in-wordpress/
       */
      define( 'WP_DEBUG', false );
      
      /* That's all, stop editing! Happy publishing. */
      
      /** Absolute path to the WordPress directory. */
      if ( ! defined( 'ABSPATH' ) ) {
      	define( 'ABSPATH', __DIR__ . '/' );
      }
      //사이드 홈페이지와 url을 정해주는 코드
      define('WP_HOME','https://wordpress.pomvtest.duckdns.org');
      define('WP_SITEURL','https://wordpress.pomvtest.duckdns.org');
      
      /** Sets up WordPress vars and included files. */
      require_once ABSPATH . 'wp-settings.php';
      

      저는 위와 같이 수정했습니다. 하나하나 설명해드리자면

      ssl로 연결될 수 있게끔 아래 코드를 코드 맨 위에 추가했구요. (맨 위 주석 바로 아래에 붙여 넣으시면 됩니다.)

       //https로 연결되게 끔 하는 코드
      define('FORCE_SSL_ADMIN', true);
      if ($_SERVER['HTTP_X_FORWARDED_PROTO'] == 'https')
      	$_SERVER['HTTPS']='on';
      

      그 아래 플러그인 업데이트 때 오류가 발생하지 않게끔 아래 코드를 추가했습니다.

      define('FS_METHOD', 'direct');//파일 업데이트 오류 방지용

      다음 데이터베이스에 대한 정보를 적절히 적어 넣은 뒤 아래 사이트에 들어가 텍스트를 복사해줍니다.

      https://api.wordpress.org/secret-key/1.1/salt/

      //워드프레스의 데이터 암호화용 salt를 붙여넣는곳
      //여기서
      define('AUTH_KEY',         '');
      define('SECURE_AUTH_KEY',  '');
      define('LOGGED_IN_KEY',    '');
      define('NONCE_KEY',        '');
      define('AUTH_SALT',        '');
      define('SECURE_AUTH_SALT', '');
      define('LOGGED_IN_SALT',   '');
      define('NONCE_SALT',       '');
      //여기까지

      위 코드 중 워드프레스의 데이터 암호화용 salt를 붙여 넣는 곳에서 위 사이트에 들어가면 나오는 텍스트들로 여기서여기까지의 텍스트를 대체해줍시다.

       

      마지막 코드 위에 아래 코드를 추가해주시면 됩니다. 그런 뒤 저장해주세요.(혹시 저장이 되지 않는 분들은 폴더에 쓰기 권한이 없는 겁니다.)

      //사이드 홈페이지와 url을 정해주는 코드
      define('WP_HOME','https://wordpress.pomvtest.duckdns.org');//자신의 사이트 주소로 변경
      define('WP_SITEURL','https://wordpress.pomvtest.duckdns.org');//자신의 사이트 주소로 변경
       

      5. 워드프레스 로그인하기

       그럼 이제 워드프레스에 로그인해줍시다.사이트 링크로 들어가면 정상적으로 접속이 되실 겁니다.

      워드레스 접속
      워드프레스 접속

      접속한 뒤 언어를 선택해줍시다.

      워드프레스 로그인
      워드프레스 로그인

      사이트 이름과 유저 이름/비밀번호 그리고 이메일을 적어 넣어준 뒤 “Install Wordpress”를 클릭해 주시면 설치가 완료된 것입니다.

      워드프레스 설치 성공
      워드프레스 설치 성공

      모든 과정이 마무리되면 위처럼 성공했다고 알려주는 페이지가 나옵니다.

      워드프레스 대시보드
      워드프레스 대시보드

      사이트에 로그인하시면 워드프레스 대시보드가 나오고 이곳에서 워드프레스의 각종 설정과 디자인 그리고 글들을 관리해주실 수 있습니다.

       

      이렇게 오늘은 omv에 워드프레스를 설치하는 방법에 대해 알아보았습니다.

      이번 포스팅에서도 콘솔을 통해 복잡한 작업을 한다던가 하는 과정은 없었습니다. 그렇기에 리눅스를 모르는 일반 사용자들도 콘솔 환경을 통해 하는 작업보다는 쉽게 접근할 수 있을 거라 생각합니다.

      다음 포스팅에서는 jellyfin이라는 미디어 서버를 설치하는 방법에 대해 알아볼까 합니다.

      그럼 이번 포스팅은 여기에서 마치도록 하고 다음에 다른 내용으로 다시 찾아오도록 하겠습니다.

      긴 글 읽어 주셔서 감사합니다.


      이전 글 읽기

       

      OMV(OpenMediaVault) 나스 서버[12]Nextcloud 설치하는 방법

      지난 포스팅을 마지막으로 openmediavault에 다양한 서비스를 설치하기 위한 준비 과정을 마쳤습니다. 그래서 이번 포스팅부터는 다양한 서비스를 설치하는 시간을 가져 보려고 합니다. 가장 먼저

      postiveemblem.tistory.com

      이전 글 읽기

       

      OMV(OpenMediaVault) 나스 서버[7]고정IP 설정/도커 pull 오류 예방 방법

      지난번 강의까지 openmediavault에서 smb와 ftp를 활성화하고 접속해 이용하는 방법까지 알려드렸습니다. 그러면 이제 본격적으로 omv의 도커 기능을 이용하기 전에 고정아이피를 할당하는 방법에 대

      postiveemblem.tistory.com


      이 글의 저작권은 전적으로 작성자인 P_Emblem에게 있으며
      허락 없는 사용을 금합니다.

      댓글

      Designed by JB FACTORY