CentOS 7サーバーにCyberPanelをインストールして構成する方法
別のシステムを使用していますか?はじめにCyberPanelは、オープンソースでありOpenLiteSpeedを使用する市場で最初のコントロールパネルの1つです。なんてこった
GoCDは、オープンソースの継続的デリバリーおよび自動化システムです。並列および順次実行を使用して、複雑なワークフローをモデル化できます。バリューストリームマップにより、複雑なワークフローを簡単に視覚化できます。GoCDを使用すると、2つのビルドを簡単に比較して、必要なアプリケーションの任意のバージョンをデプロイできます。GoCDエコシステムは、GoCDサーバーとGoCDエージェントで構成されています。GoCDは、Webベースのユーザーインターフェースの実行、エージェントへのジョブの管理と提供など、すべての制御を担当します。Goエージェントは、ジョブとデプロイメントの実行を担当します。
このチュートリアルでは192.168.1.1
、パブリックIPアドレスおよびgocd.example.com
Vultrインスタンスを指すドメイン名として使用します。サンプルのドメイン名とIPアドレスをすべて実際のものに置き換えてください。
CentOS 7のアップデート方法ガイドを使用して、ベースシステムをアップデートします。システムが更新されたら、Javaのインストールに進みます。
GoCDはJavaバージョン8を必要とし、Oracle JavaとOpenJDKの両方をサポートします。このチュートリアルでは、OpenJDKからJava 8をインストールします。
OpenJDKは、パッケージがデフォルトのYUM
リポジトリで利用できるため、簡単にインストールできます。
sudo yum -y install java-1.8.0-openjdk-devel
Javaが正しくインストールされている場合は、そのバージョンを確認できます。
java -version
次のテキストと同様の出力が得られます。
[user@vultr ~]$ java -version
openjdk version "1.8.0_151"
OpenJDK Runtime Environment (build 1.8.0_151-b12)
OpenJDK 64-Bit Server VM (build 25.151-b12, mixed mode)
さらに先に進む前に、JAVA_HOME
およびJRE_HOME
環境変数を設定する必要があります。システム内のJava実行可能ファイルの絶対パスを見つけます。
readlink -f $(which java)
次のテキストが端末に出力されます。
[user@vultr ~]$ readlink -f $(which java)
/usr/lib/jvm/java-1.8.0-openjdk-1.8.0.151-5.b12.el7_4.x86_64/jre/bin/java
次に、Javaディレクトリーのパスに従ってJAVA_HOME
とJRE_HOME
環境変数を設定します。
echo "export JAVA_HOME=/usr/lib/jvm/java-1.8.0-openjdk-1.8.0.151-5.b12.el7_4.x86_64" >> ~/.bash_profile
echo "export JRE_HOME=/usr/lib/jvm/java-1.8.0-openjdk-1.8.0.151-5.b12.el7_4.x86_64/jre" >> ~/.bash_profile
注: システムで取得したJavaパスを使用してください。このチュートリアルで使用されるパスは、Java 8の新しいバージョンがリリースされると変更される可能性があります。
bash_profile
ファイルを実行します。
source ~/.bash_profile
これで、echo $JAVA_HOME
コマンドを実行して、環境変数が設定されていることを確認できます。
[user@vultr ~]$ echo $JAVA_HOME
/usr/lib/jvm/java-1.8.0-openjdk-1.8.0.151-1.b12.el7_4.x86_64
GoCDはJavaで記述されているため、GoCDを実行するにはJavaが唯一の依存関係です。GoCDはを使用してインストールできますYUM
。公式リポジトリをシステムにインストールします。
sudo curl https://download.gocd.org/gocd.repo -o /etc/yum.repos.d/gocd.repo
システムにGoCDサーバーをインストールします。
sudo yum install -y go-server
GoCDを起動して、起動時に自動的に起動するようにします。
sudo systemctl start go-server
sudo systemctl enable go-server
GoCDダッシュボードにアクセスする前に、アーティファクトを保存するための新しいディレクトリを作成しましょう。アーティファクトは、オペレーティングシステムとアプリケーションがインストールされているのと同じディスクに保存できます。または、専用のディスクまたはブロックストレージドライブを使用してアーティファクトを保存することもできます。
同じディスクを使用してアーティファクトを保存する場合は、新しいディレクトリを作成し、GoCDユーザーに所有権を提供します。
sudo mkdir /opt/artifacts
sudo chown -R go:go /opt/artifacts
GoCDソフトウェアでは、追加のパーティションまたはドライブを使用してアーティファクトを保存することをお勧めします。継続的な統合および配信プラットフォームでは、アーティファクトが非常に頻繁に生成されます。新しいアーチファクトが継続的に生成されると、時間の経過とともにディスク領域が減少します。ある段階で、システムの空きディスク領域が不足し、システムで実行されているサービスが失敗します。この問題を解決するには、新しいVultrブロックストレージドライブを接続して、アーティファクトを保存します。同じドライブにアーティファクトを保存する場合は、「ファイアウォールのセットアップ」セクションに進んでください。
新しいブロックストレージドライブを展開し、GoCDサーバーインスタンスに接続します。次に、ブロックストレージデバイスに新しいパーティションを作成します。
sudo parted -s /dev/vdb mklabel gpt
sudo parted -s /dev/vdb unit mib mkpart primary 0% 100%
新しいディスクにファイルシステムを作成します。
sudo mkfs.ext4 /dev/vdb1
ブロックストレージドライブをマウントします。
sudo mkdir /mnt/artifacts
sudo cp /etc/fstab /etc/fstab.backup
echo "
/dev/vdb1 /mnt/artifacts ext4 defaults,noatime 0 0" | sudo tee -a /etc/fstab
sudo mount /mnt/artifacts
次に、を実行df
すると、新しいブロックストレージドライブがにマウントされてい/mnt/artifacts
ます。
[user@vultr ~]$ df
Filesystem 1K-blocks Used Available Use% Mounted on
/dev/vda1 20616252 6313892 13237464 33% /
...
/dev/vdb1 10188052 36888 9610596 1% /mnt/artifacts
ディレクトリの所有権をGoCDユーザーに提供します。
sudo chown -R go:go /mnt/artifacts
ファイアウォール構成を変更して、ポートを許可し、ファイアウォール8153
を8154
通過できるようにします。ポート8153
は、8154
保護されていない接続をリッスンし、ポートは保護された接続をリッスンします。
sudo firewall-cmd --zone=public --add-port=8153/tcp --permanent
sudo firewall-cmd --zone=public --add-port=8154/tcp --permanent
sudo firewall-cmd --reload
これで、GoCDダッシュボードにアクセスできますhttp://192.168.1.1:8153
。保護された接続でGoCDダッシュボードにアクセスするには、にアクセスしますhttps://192.168.1.1:8154
。証明書が無効であることを示すエラーが表示されます。証明書は自己署名されているため、エラーを無視しても問題ありません。セキュリティ上の理由から、常に安全な接続でダッシュボードを使用する必要があります。
新しいパイプラインを設定する前にAdmin >> Server Configuration
、上部のナビゲーションバーから「」に移動します。
「Site URL
」フィールドに保護されていないサイトへのURLを入力し、「」フィールドに保護されたサイトを入力しますSecure Site URL
。
次に、GoCDから電子メール通知を送信するためのSMTPサーバーの詳細を入力します。
最後に、アーティファクトを保存する場所へのパスを指定します。オペレーティングシステムと同じディスクにアーティファクトを保存することを選択した場合は、と入力し/opt/artifacts
ます。ブロックストレージドライブの接続を選択した場合は、と入力できます/mnt/artifacts
。
また、古いアーティファクトを自動削除するようにGoCDを構成できます。ディスクサイズに応じて次のオプションを構成します。ただし、自動削除オプションでは、古いアーティファクトのバックアップは作成されません。手動でバックアップを作成してから古いアーティファクトを削除するには、「Never
」オプションの「」オプションを選択して自動削除を無効にしAuto delete old artifacts
ます。
新しい変更を適用するには、GoCDサーバーを再起動する必要があります。
sudo systemctl restart go-server
デフォルトでは、GoCDダッシュボードはどのような種類の認証も使用するように構成されていませんが、パスワードファイルとLDAPを使用した認証をサポートしています。このチュートリアルでは、パスワードベースの認証を設定します。
注:認証の設定はオプションのステップですが、Vultrなどの公開サーバーには強く推奨されます。
htpasswd
コマンドを使用して暗号化されたパスワードファイルを作成できるように、Apacheツールをインストールします。
sudo yum -y install httpd-tools
htpasswd
Bcrypt暗号化を使用するコマンドでパスワードファイルを作成します。
sudo htpasswd -B -c /etc/go/passwd_auth goadmin
ユーザーのパスワードを2回入力します。次の出力が表示されます。
[user@vultr ~]$ sudo htpasswd -B -c /etc/go/passwd_auth goadmin
New password:
Re-type new password:
Adding password for user goadmin
上記と同じコマンドを使用して、-c
オプションを削除して、必要な数のユーザーを追加できます。この-c
オプションは、既存のファイルを置き換え、古いユーザーを新しいユーザーに置き換えます。
sudo htpasswd -B /etc/go/passwd_auth gouser1
パスワードファイルを作成したので、GoCDダッシュボードに再度アクセスします。Admin >> Security >> Authorization Configurations
上部のナビゲーションバーから「」に移動します。ボタンをクリックしてAdd
、IDを入力します。Password File Authentication Plugin for GoCD
プラグインIDとして「」を選択し、パスワードファイルへのパスを指定します。次に、「Check Connection
」ボタンをクリックして、GoCDが認証にパスワードファイルを使用できることを確認します。
最後に、認証方法を保存します。ダッシュボードをリロードすると、自動的にログアウトされます。ログイン画面が表示されます。以前に作成した資格情報を使用してログインします。
管理者ユーザーを手動で昇格する必要があります。そうしないと、すべてのユーザーに管理者権限が付与されます。Admin >> User Summary
上部のナビゲーションバーから「」に移動します。
次に、作成した管理者ユーザーを選択して、「Roles
」ドロップダウンをクリックします。「Go System Administrator
」チェックボックスを選択して、ユーザーを唯一の管理者に昇格させます。
パスワードファイルに作成されたGoCDのユーザーを追加するには、[] ADD
ボタンをクリックして、追加するユーザーを検索します。また、ユーザーは最初のログイン時にGoCDダッシュボードに自動的に追加されます。明らかに、ユーザーがログインするには、前に作成したパスワードファイルに追加する必要があります。
デフォルトでは、GoCDはポート8153
と8154
安全な接続をリッスンします。ポート8154
はアプリケーションへの安全な接続を提供しますが、自己署名証明書を使用するため、ブラウザエラーも表示します。チュートリアルのこのセクションでは、Nginxをインストールして、Let's Encryptの無料SSL証明書で保護します。Nginxウェブサーバーは、着信リクエストをGoCDのHTTP
エンドポイントに転送するリバースプロキシとして機能します。
Nginxをインストールします。
sudo yum -y install nginx
Nginxを起動し、起動時に自動的に起動するようにします。
sudo systemctl start nginx
sudo systemctl enable nginx
Let's Encrypt CAのクライアントアプリケーションであるCertbotをインストールします。
sudo yum -y install certbot
証明書を要求する前に、ポート80
と443
、または標準HTTP
とHTTPS
サービスをファイアウォール経由で許可する必要があります。また、8153
保護されていない接続をリッスンするポートを削除します。
sudo firewall-cmd --zone=public --add-service=http --permanent
sudo firewall-cmd --zone=public --add-service=https --permanent
sudo firewall-cmd --zone=public --remove-port=8153/tcp --permanent
sudo firewall-cmd --reload
注:Let's Encrypt CAから証明書を取得するには、証明書を生成するドメインをサーバーに向ける必要があります。そうでない場合は、ドメインのDNSレコードに必要な変更を加え、DNSが伝播するのを待ってから、証明書要求を再度行ってください。証明書ボットは、証明書を提供する前にドメイン認証局をチェックします。
SSL証明書を生成します。
sudo certbot certonly --webroot -w /usr/share/nginx/html -d gocd.example.com
生成された証明書は、おそらくに保存され/etc/letsencrypt/live/gocd.example.com/
ます。SSL証明書はとして保存されfullchain.pem
、秘密鍵はとして保存されprivkey.pem
ます。
証明書を暗号化しましょう90日で有効期限が切れるので、cronジョブを使用して証明書の自動更新を設定することをお勧めします。
cronジョブファイルを開きます。
sudo crontab -e
ファイルの最後に次の行を追加します。
30 5 * * * /usr/bin/certbot renew --quiet
上記のcronジョブは、毎日午前5時30分に実行されます。証明書の有効期限が切れる場合は、自動的に更新されます。
次に、Nginxのデフォルト構成ファイルを変更して、default_server
行を削除します。
sudo sed -i 's/default_server//g' /etc/nginx/nginx.conf
GoCD Webインターフェース用の新しい構成ファイルを作成します。
sudo nano /etc/nginx/conf.d/gocd.conf
ファイルに入力します。
upstream gocd {
server 127.0.0.1:8153;
}
server {
listen 80 default_server;
server_name gocd.example.com;
return 301 https://$host$request_uri;
}
server {
listen 443 default_server;
server_name gocd.example.com;
ssl_certificate /etc/letsencrypt/live/gocd.example.com/fullchain.pem;
ssl_certificate_key /etc/letsencrypt/live/gocd.example.com/privkey.pem;
ssl on;
ssl_session_cache builtin:1000 shared:SSL:10m;
ssl_protocols TLSv1 TLSv1.1 TLSv1.2;
ssl_ciphers HIGH:!aNULL:!eNULL:!EXPORT:!CAMELLIA:!DES:!MD5:!PSK:!RC4;
ssl_prefer_server_ciphers on;
access_log /var/log/nginx/gocd.access.log;
location / {
proxy_pass http://gocd;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
proxy_set_header Host $http_host;
proxy_set_header X-NginX-Proxy true;
proxy_redirect off;
}
location /go {
proxy_pass http://gocd/go;
proxy_http_version 1.1;
proxy_set_header Upgrade websocket;
proxy_set_header Connection upgrade;
proxy_read_timeout 86400;
}
}
新しい構成ファイルのエラーを確認します。
sudo nginx -t
次の出力が表示された場合、構成にエラーはありません。
[user@vultr ~]$ sudo nginx -t
nginx: the configuration file /etc/nginx/nginx.conf syntax is ok
nginx: configuration file /etc/nginx/nginx.conf test is successful
何らかのエラーを受け取った場合は、SSL証明書へのパスを再確認してください。Nginx Webサーバーを再起動して、構成の変更を実装します。
sudo systemctl restart nginx
これで、GoCDダッシュボードにアクセスできますhttps://gocd.example.com
。管理者の資格情報を使用してダッシュボードにログインしAdmin >> Server Configuration
、上部のナビゲーションバーから「」に移動します。
「Site URL
」と「Secure Site URL
」をに設定しhttps://gocd.example.com
ます。ポートは8154
まだ、リモートエージェントはポートを介してサーバーに接続できるようにファイアウォールを経由してアクセスできるようにする必要があります8154
彼らは標準を介して接続することができない場合には、HTTP
ポート。
GoCD継続的統合環境では、GoCDエージェントはすべてのタスクの実行を担当するワーカーです。ソースの変更が検出されると、パイプラインがトリガーされ、実行可能なジョブにジョブが割り当てられます。次に、エージェントはタスクを実行し、実行後の最終ステータスを報告します。
パイプラインを実行するには、少なくとも1つのエージェントを構成する必要があります。GoCDサーバーへのGoCDエージェントのインストールに進みます。
GoCDリポジトリはサーバーにすでにインポートされているため、Go Agentを直接インストールできます。
sudo yum install -y go-agent
GoCDサーバーを起動し、起動時に自動的に起動するようにします。
sudo systemctl start go-agent
sudo systemctl enable go-agent
ローカルホストで実行されているGoCDエージェントは、検出されると自動的に有効になります。
別のシステムを使用していますか?はじめにCyberPanelは、オープンソースでありOpenLiteSpeedを使用する市場で最初のコントロールパネルの1つです。なんてこった
LinuxおよびUnixのシステム管理者の間では、sudoユーザーを使用してサーバーにアクセスし、コマンドをルートレベルで実行することは非常に一般的です。sudの使用
別のシステムを使用していますか?Netdataは、リアルタイムのシステムメトリックモニタリングの分野における新星です。同じ種類の他のツールと比較すると、Netdata:
このチュートリアルでは、Just Cause 2マルチプレイヤーサーバーのセットアップ方法をよく学びます。前提条件開始する前に、システムが完全に更新されていることを確認してください
別のシステムを使用していますか?このチュートリアルでは、CentOS 7でStarboundサーバーをセットアップする方法を説明します。前提条件このゲームを所有している必要があります。
Go(Golangとも呼ばれます)は、静的に型付けされ、コンパイルされた、Cのようなプログラミング言語で、Googleによって開発されました。シンプルさと多用途性により、b
Djangoは、Webアプリケーションを作成するための一般的なPythonフレームワークです。Djangoを使用すると、ホイールを再発明することなく、アプリケーションをより速く構築できます。あなたが望むなら
別のシステムを使用していますか?TextPattern CMS 4.6.2はシンプルで柔軟な無料のオープンソースコンテンツ管理システム(CMS)であり、Webデザイナーが
別のシステムを使用していますか?Elggはオープンソースのソーシャルネットワーキングエンジンであり、キャンパスのソーシャルネットワークや
Froxlorは、オープンソースの無料で軽量かつ強力なサーバー管理パネルであり、Webホスティングサービスの確立と管理に最適です。ティ
Matrixは、分散型リアルタイム通信用のオープンスタンダードの通信プロトコルです。マトリックスは、上記に分散されているホームサーバーとして実装されています
Vtiger CRMは、企業が売り上げを伸ばし、顧客サービスを提供し、利益を増やすのに役立つ人気の顧客関係管理アプリケーションです。私
はじめにこのチュートリアルでは、Vultr VPSにPufferPanelをインストールしてください。PufferPanelは、オープンソースで自由に使用できるコントロールパネルで、あなたを管理します
この記事では、CentOS 7サーバーにApache 2.4をインストールするプロセスの概要を説明します。前提条件:最新のCentOS 7サーバー。sudoユーザー。Ste
はじめにこのチュートリアルでは、NGINXまたはApacheを使用してPHP 5 *を7に更新する方法について説明します。前提条件始める前に、リポジトリを追加する必要があります
MoinMoinは、Pythonで書かれたオープンソースのファイルシステムベースのWikiエンジンです。今日、MoinMoinはオープンソースコミュニティで広く使用されています。多くのベンダー
別のシステムを使用していますか?SonarQubeは、品質システム開発のためのオープンソースツールです。Javaで書かれており、複数のデータベースをサポートしています。それは提供します
PritunlはOpenVPNのオープンソース管理インターフェイスです。プライベートネットワークが可能で、ネイティブIPv6サポートがあり、使用方法は比較的簡単です。ター
この記事では、Vultrでテンプレートとして提供されるサーバーオペレーティングシステムの概要を説明します。CentOS CentOSはRHEL(Re
phpPgAdminは、広く使用されているPostgreSQL管理ツールです。これを使用して、直感的なWebインターフェイスでPostgreSQLデータベースを管理できます。この記事では、
ヘルスケアにおけるAIは、過去数十年から大きな飛躍を遂げました。したがって、ヘルスケアにおけるAIの未来は、日々成長を続けています。
最近、Appleは問題を修正するための補足アップデートであるmacOS Catalina 10.15.4をリリースしましたが、このアップデートにより、Macマシンのブリックにつながる問題がさらに発生しているようです。詳細については、この記事をお読みください
原子力は、過去の出来事のために私たちが決して尊重しないことを常に軽蔑していますが、それは必ずしも悪ではありません。詳細については、投稿をお読みください。
これを読んで、人工知能が小規模企業の間でどのように人気を博しているか、そして人工知能がどのように成長し、競合他社に優位に立つ可能性を高めているかを理解してください。
私たちのコンピューターは、ジャーナリングファイルシステムと呼ばれる組織化された方法ですべてのデータを保存します。これは、検索を押すとすぐにコンピューターがファイルを検索して表示できるようにする効率的な方法です。https://wethegeek.com/?p = 94116&preview = true
ビッグデータと人工知能は流行語ですが、それらがどのように相互に関連しているか知っていますか?さて、この記事を最後まで読んで、同じことを知ってください。
LiteCartは、PHP、jQuery、およびHTML 5で記述された無料のオープンソースのショッピングカートプラットフォームです。シンプルで軽量、使いやすいeコマースソフトウォー
NFSはネットワークベースのファイルシステムであり、コンピューターはコンピューターネットワークを介してファイルにアクセスできます。このガイドでは、NFを介してフォルダーを公開する方法について説明します
別のシステムを使用していますか?Matomo(旧Piwik)は、Google Analyticsのオープンな代替手段であるオープンソースの分析プラットフォームです。Matomoのソースはoでホストされています
HTTPライブストリーミング(HLS)は、Apple Inc.によって実装された非常に堅牢なストリーミングビデオプロトコルです。HLSは、ファイアウォール、プロキシ、