Jenkins shellスクリプトのエラー

2060 ワード

1.cdの使用に注意
  • pwd
    /var/jenkins_home/workspace/a307
  • ワークスペースはコンテナ内にあるため、-vオプションを使用してホストパスにマッピングするのとは異なり、cd..コマンドを使用して直接ホストパスに移動することはできません.
    移動したい場合はexitなどを使うべきです.
    そうする必要はありません.コンテナにも大きなファイルを構築することができます.
    DOKERファイルに必要な情報はすでにCOPYに設定されていますので、今から再生しましょう.

  • ドッキング権限の問題
    インストール中にDockerユーザーグループに牛奮闘を追加したのに...

  • /var/run/docker.sockファイルの権限を666に変更し、グループ内の他のユーザーもアクセスできるようにします.
  • sudo chmod 666 /var/run/docker.sock

  • sudo実行不可の問題が発生しました(ドッキングファイルでsudoを実行する場合は、次のコマンドを使用します).
    apt-get update
    apt-get -y install sudo
    リファレンス
    https://stackoverflow.com/questions/25845538/how-to-use-sudo-inside-a-docker-container
  • 以上の2つの問題はjenkins shell scriptではなくUbuntuを接続することによって解決された.どうしたんですか.今shellはjenkins内部容器shellのようで、jenkins自体のボリュームのようです.

    まだ確定していませんがjenkins内部の何かがわかります.
    したがってapt-get updateを実行すると権限の問題が発生するためsudoも使用できません.

    このため,Ubuntu内でも大きな権限問題が解決された.
    2.ドックファイルの理解不足
    フロントエンドドックファイル
    #nginx 베이스이미지
    FROM nginx 
    #내가 설정한 엔진엑스 파일을 호스트에서 컨테이너로 복사
    COPY nginx/nginx.conf /etc/nginx/conf.d/default.conf
    #빌드된 프론트 파일을 엔진엑스 컨테이너 경로로 옮김
    COPY --from=build /app/build /usr/share/nginx/html
    このセクションの設定にエラーが発生しました.
    FROMを使用すると、パスはベース画像に配置されます.
    COPY nginx/nginx.conf
    COPY ~/nginx/nginx.conf
    などの経路が入れ替わるのも基本イメージ容器内です.
    --from=buildオプションがあるので、ファイルにbuildでasのノードイメージを追加し、ノードイメージの/app/buildパスからファイルをコピーしてnginxイメージの/usr/share/nginx/htmlに貼り付けます.
    3.Execute shellを実行するたびに、場所はデフォルトのパスに戻ります.