Docker で onlyoffice をインストールして展開する詳細なプロセス

Docker で onlyoffice をインストールして展開する詳細なプロセス

0. システム要件

CPU I5-10400F以上

メモリ 16 GB、32 GBのメモリが最適

ハードドライブに少なくとも40 GBの空き容量があること

1: Dockerデスクトップをインストールする

2: BIOSに入りCPU仮想化を設定する

https://jingyan.baidu.com/article/ab0b56305f2882c15afa7dda.html

3: Dockerデスクトップを起動する

エラー解決方法: https://www.jb51.net/article/214820.htm

3: cmdと入力し、コマンドを使用してonlyofficeをインストールします

ユニバーサルバージョンをインストールします。

docker pull hub.c.163.com/gongzh/onlyoffice:latest

走る

docker run -i -t -d -p 8702:80 hub.c.163.com/gongzh/onlyoffice

コミュニティバージョン[無料]をインストールします:

docker run -i -t -d -p 8703:80 --restart=always のみoffice/documentserver

コンテナを表示するには、docker psと入力します。

コンテナに入ります。docker exec -i -t e15 /bin/bash [e15はコンテナIDです]

中国語パッケージ、onlyoffice中国語フォントパッケージをインストールし、解凍してdocker_run.shを実行します。

4:123.rarファイルはWordを編集するためのコードであり、onlyoffceExampleはファイルを受け入れるためのコードです

https://gitee.com/zhuhaos/onlyoffice/repository/archive/master.zip

5: H5 ページの構成、[localhost の代わりに IP アドレスを使用する必要があります]

<!DOCTYPE html>

<html lang="ja" xmlns="http://www.w3.org/1999/xhtml">

<ヘッド>

    <メタ文字セット="utf-8" />

    <タイトル></タイトル>

</head>

<body style="height:900px;">

    <div id="placeholder" style="height:880px;"></div>

    <script type="text/javascript" src="http://192.168.1.140:8703/web-apps/apps/api/documents/api.js"></script>

    <script type="text/javascript">

        var config = {

            "エディター設定": {

                "lang": "zh-CN",

                "モード": "編集",

            },

            "書類": {

                "ファイルタイプ": "docx",

                "キー": "Khirzs6zTPdfd27",

                "title": "サンプル文書タイトル.docx",

                "url": "http://192.168.1.140/1234.docx", //ここにドキュメントの URL パスを入力してください},

            "ドキュメントタイプ": "テキスト",

            "lang": "zh-CN",

        };

        var docEditor = new DocsAPI.DocEditor("placeholder", config);

    </スクリプト>

</本文>

</html>

6: 既存の問題は[コミュニティバージョン]を使用する必要があります。1つは[中国語フォント]です。
7: ページを閉じると、コールバックは自動的に保存されます。

本文:{"key":"12NAFE","status":2,"url":"http://192.168.1.140:8702/cache/files/12NAFE_3573/output.docx/output.docx?md5=Ig6ycB-dGH708fuNDt-Tsg==&expires=1623199603&disposition=attachment&ooname=output.docx","changesurl":"http://192.168.1.140:8702/cache/files/12NAFE_3573/changes.zip/changes.zip?md5=asEzUMiPjS5a-17wxp7oPA==&expires=1623199603&disposition=attachment&ooname=output.zip","履歴":
{"serverVersion":"5.1.3","変更":
[{"作成日":"2021-06-09 00:16:31","ユーザー":
{"id":"uid-1623197783691","name":"匿名"
}},
{"作成日":"2021-06-09 00:16:43","ユーザー":
{"id":"uid-1623197795750","name":"匿名"
}},{"作成日":"2021-06-09 00:24:48","ユーザー":
{"id":"uid-1623198283436","name":"匿名"
}}]},"ユーザー":["uid-1623198283436"],"アクション":
[{"type":0,"userid":"uid-1623198542944"
}],"lastsave":"2021-06-09T00:27:54.050Z","notmodified":false
}

8: ファイル受信キーコード [一般的な処理手順]

パブリック void ProcessRequest(HttpContext コンテキスト)

        {

 

            文字列本体;

            (var reader = new StreamReader(context.Request.InputStream) を使用します)

                本文 = reader.ReadToEnd();

            var fileData = new JavaScriptSerializer().Deserialize<Dictionary<string, object>>(body);

            if (fileData != null && fileData["status"].ToString() == "2")

            {

                var req = WebRequest.Create((string)fileData["url"]);

                文字列 PATH_FOR_SAVE = context.Server.MapPath("~/temp/") + DateTime.Now.ToString("yyyyMMddhhmmss") + ".docx";

                (var stream = req.GetResponse().GetResponseStream() を使用)

                (var fs = File.Open(PATH_FOR_SAVE, FileMode.Create) を使用します)

                {

                    var buffer = 新しいバイト[4096];

                    int 読み取り済み;

                    ((readed = stream.Read(buffer, 0, 4096)) != 0) の間

                        fs.Write(バッファ、0、読み取り済み);

                }

            }

            context.Response.Write("{\"エラー\":0}");

        }

以上がonlyofficeのdockerデプロイメントの詳細です。onlyofficeのdockerデプロイメントの詳細については、123WORDPRESS.COMの他の関連記事に注目してください。

以下もご興味があるかもしれません:
  • Ubuntu Dockerのインストール、展開、シンプルなアプリケーション
  • CentOS7 システムへの Docker のインストールと展開および基本チュートリアル
  • Dockerプライベート倉庫の構築と利用の詳細説明
  • CentOS 7の詳細解説:Dockerプライベートウェアハウスの構築と使い方
  • Docker Registry プライベート ウェアハウスを構築するための詳細な手順
  • インストールからアプリケーションのデプロイ、プライベートウェアハウスの構築までDockerの基本コマンド

<<:  サイトマップをウェブページの下部に配置するメリットと例

>>:  選択にスタイルを追加するための純粋な CSS (スクリプトなし) 実装

推薦する

MySql 学習ノートにおけるトランザクション分離レベルの詳細な説明

背景トランザクションについて話すとき、誰もがそれに精通している必要があります。MySQL データベー...

React 星評価コンポーネントの実装

要件は、製品の評価データを渡すことであり、ページには対応する星の数が表示されます。 1. 異なる評価...

MySQL シリーズ 13 MySQL レプリケーション

目次1. MySQLレプリケーション関連の概念2. シンプルな1マスター1スレーブアーキテクチャの実...

MySQL がデータの削除と挿入に非常に時間がかかる問題の解決策

会社の開発者がテスト環境で挿入ステートメントを実行すると、正常に実行されるまでに 10 秒以上かかり...

Linux (Ubuntu 18.04) に vim エディタをインストールする方法

デスクトップ システムをダウンロードするには、Ubuntu の公式 Web サイト (https:/...

Easyswoole ワンクリック インストール スクリプトとパゴダ インストール エラー

よくある質問easyswoole を初めて使用する場合は、次のような問題に遭遇することがよくあります...

WeChatミニプログラムでトークンの有効期限を処理する方法

目次まず結論から質問解決Promiseを使用してコールバック関数をカプセル化する要約するまず結論から...

ボタンをクリックしてテキストを入力ボックスに変換し、保存をクリックしてテキスト実装コードに変換します。

ボタンをクリックしてテキストを入力ボックスに変換し、保存をクリックしてテキスト実装コードに変換します...

MySQL で自動インクリメントシーケンスを実装するためのサンプルコード

1. シーケンステーブルを作成する テーブル `sequence` を作成します ( `name` ...

WeChatアプレットがログインインターフェースを実装

WeChatアプレットのログインインターフェースは参考までに実装されています。具体的な内容は次のとお...

Dockerfile の一般的なコマンドの概要

構文の構成: 1 注釈情報2 コマンド --- パラメータ [通常は大文字 | 実際には大文字と小文...

CSSは、他のレイヤーを変更せずに、多層ネスト構造の最外層を回転させる効果を実現します。

次のようなシナリオがあります。円形のコンテナで、最も外側のコンテナの背景が円弧になっています。内側の...

MySQL ベースのシーケンス実装方法

チームは新しいフレームを交換しました。すべての新しいビジネスでは、新しいフレームワークと新しいデータ...

MySQL での mysqladmin 日常管理コマンドの概要 (必読)

mysqladmin ツールの使用形式は次のとおりです。 mysqladmin [オプション] コ...

JavaScript を使用して動的に生成されるテーブルの詳細な説明

*ページを作成する: 2つの入力ボックスとボタン*コードと手順/* 1. 入力行と列の値を取得する2...