优化openGauss官方容器源码(三)

本文涉及的产品
容器镜像服务 ACR,镜像仓库100个 不限时长
容器服务 Serverless 版 ACK Serverless,952元额度 多规格
容器服务 Serverless 版 ACK Serverless,317元额度 多规格
简介: 优化openGauss官方容器源码

3. buildDockerImage.sh

[root@ecs-lee dockerfiles]# sh buildDockerImage.sh -v 3.1.0 -i
...
...
==========================
Building image 'opengauss:3.1.0' ...
Sending build context to Docker daemon  24.58kB
Step 1/12 : FROM centos:7.6.1810 as builder
 ---> f1cb7c7d58b7
Step 2/12 : RUN set -eux;     yum install -y     wget &&     wget https://github.com/tianon/gosu/releases/download/1.14/gosu-amd64 &&     wget https://opengauss.obs.cn-south-1.myhuaweicloud.com/3.1.0/x86/openGauss-3.1.0-CentOS-64bit.tar.bz2
 ---> Running in 81f2e272d525
+ yum install -y wget
Loaded plugins: fastestmirror, ovl
Determining fastest mirrors
 * base: mirrors.bupt.edu.cn
 * extras: mirrors.tuna.tsinghua.edu.cn
 * updates: mirrors.bupt.edu.cn
Resolving Dependencies
--> Running transaction check
---> Package wget.x86_64 0:1.14-18.el7_6.1 will be installed
--> Finished Dependency Resolution
Dependencies Resolved
================================================================================
 Package        Arch             Version                   Repository      Size
================================================================================
Installing:
 wget           x86_64           1.14-18.el7_6.1           base           547 k
Transaction Summary
================================================================================
Install  1 Package
Total download size: 547 k
Installed size: 2.0 M
Downloading packages:
warning: /var/cache/yum/x86_64/7/base/packages/wget-1.14-18.el7_6.1.x86_64.rpm: Header V3 RSA/SHA256 Signature, key ID f4a80eb5: NOKEY
Public key for wget-1.14-18.el7_6.1.x86_64.rpm is not installed
Retrieving key from file:///etc/pki/rpm-gpg/RPM-GPG-KEY-CentOS-7
Importing GPG key 0xF4A80EB5:
 Userid     : "CentOS-7 Key (CentOS 7 Official Signing Key) <security@centos.org>"
 Fingerprint: 6341 ab27 53d7 8a78 a7c2 7bb1 24c6 a8a7 f4a8 0eb5
 Package    : centos-release-7-6.1810.2.el7.centos.x86_64 (@CentOS)
 From       : /etc/pki/rpm-gpg/RPM-GPG-KEY-CentOS-7
Running transaction check
Running transaction test
Transaction test succeeded
Running transaction
  Installing : wget-1.14-18.el7_6.1.x86_64                                  1/1
install-info: No such file or directory for /usr/share/info/wget.info.gz
  Verifying  : wget-1.14-18.el7_6.1.x86_64                                  1/1
Installed:
  wget.x86_64 0:1.14-18.el7_6.1
Complete!
+ wget https://github.com/tianon/gosu/releases/download/1.14/gosu-amd64
--2022-10-09 07:43:31--  https://github.com/tianon/gosu/releases/download/1.14/gosu-amd64
Resolving github.com (github.com)... 20.205.243.166
Connecting to github.com (github.com)|20.205.243.166|:443... connected.
HTTP request sent, awaiting response... 302 Found
Location: https://objects.githubusercontent.com/github-production-release-asset-2e65be/19708981/82f5cda4-dad5-4537-ace2-fb61e8c1a25a?X-Amz-Algorithm=AWS4-HMAC-SHA256&X-Amz-Credential=AKIAIWNJYAX4CSVEH53A%2F20221009%2Fus-east-1%2Fs3%2Faws4_request&X-Amz-Date=20221009T074332Z&X-Amz-Expires=300&X-Amz-Signature=9b00f8879f4fa6823a42ab5aa0ccfb0c261ca849c281eb0460eb2b4022cc2a51&X-Amz-SignedHeaders=host&actor_id=0&key_id=0&repo_id=19708981&response-content-disposition=attachment%3B%20filename%3Dgosu-amd64&response-content-type=application%2Foctet-stream [following]
--2022-10-09 07:43:32--  https://objects.githubusercontent.com/github-production-release-asset-2e65be/19708981/82f5cda4-dad5-4537-ace2-fb61e8c1a25a?X-Amz-Algorithm=AWS4-HMAC-SHA256&X-Amz-Credential=AKIAIWNJYAX4CSVEH53A%2F20221009%2Fus-east-1%2Fs3%2Faws4_request&X-Amz-Date=20221009T074332Z&X-Amz-Expires=300&X-Amz-Signature=9b00f8879f4fa6823a42ab5aa0ccfb0c261ca849c281eb0460eb2b4022cc2a51&X-Amz-SignedHeaders=host&actor_id=0&key_id=0&repo_id=19708981&response-content-disposition=attachment%3B%20filename%3Dgosu-amd64&response-content-type=application%2Foctet-stream
Resolving objects.githubusercontent.com (objects.githubusercontent.com)... 185.199.109.133, 185.199.111.133, 185.199.108.133, ...
Connecting to objects.githubusercontent.com (objects.githubusercontent.com)|185.199.109.133|:443... connected.
HTTP request sent, awaiting response... 200 OK
Length: 2289664 (2.2M) [application/octet-stream]
Saving to: 'gosu-amd64'
     0K .......... .......... .......... .......... ..........  2%  200K 11s
    50K .......... .......... .......... .......... ..........  4%  231K 10s
   100K .......... .......... .......... .......... ..........  6%  256K 9s
   ...
   ...
  2100K .......... .......... .......... .......... .......... 96%  172K 0s
  2150K .......... .......... .......... .......... .......... 98%  133K 0s
  2200K .......... .......... .......... ......               100%  128K=12s
2022-10-09 07:43:45 (183 KB/s) - 'gosu-amd64' saved [2289664/2289664]
+ wget https://opengauss.obs.cn-south-1.myhuaweicloud.com/3.1.0/x86/openGauss-3.1.0-CentOS-64bit.tar.bz2
--2022-10-09 07:43:45--  https://opengauss.obs.cn-south-1.myhuaweicloud.com/3.1.0/x86/openGauss-3.1.0-CentOS-64bit.tar.bz2
Resolving opengauss.obs.cn-south-1.myhuaweicloud.com (opengauss.obs.cn-south-1.myhuaweicloud.com)... 139.159.208.230, 139.159.208.64, 121.37.63.38, ...
Connecting to opengauss.obs.cn-south-1.myhuaweicloud.com (opengauss.obs.cn-south-1.myhuaweicloud.com)|139.159.208.230|:443... connected.
HTTP request sent, awaiting response... 200 OK
Length: 89822788 (86M) [application/x-bzip2]
Saving to: 'openGauss-3.1.0-CentOS-64bit.tar.bz2'
     0K .......... .......... .......... .......... ..........  0%  622K 2m21s
    50K .......... .......... .......... .......... ..........  0% 1.67M 96s
 ...
 ...
 87600K .......... .......... .......... .......... .......... 99% 1.81M 0s
 87650K .......... .......... .......... .......... .......... 99% 1.73M 0s
 87700K .......... .......                                    100% 5.79M=61s
2022-10-09 07:44:47 (1.40 MB/s) - 'openGauss-3.1.0-CentOS-64bit.tar.bz2' saved [89822788/89822788]
Removing intermediate container 81f2e272d525
 ---> 4b6c7c242126
Step 3/12 : FROM centos:7.6.1810
 ---> f1cb7c7d58b7
Step 4/12 : COPY --from=builder /gosu-amd64  /usr/local/bin/gosu
 ---> 5a697e587c2a
Step 5/12 : COPY --from=builder /openGauss-3.1.0-CentOS-64bit.tar.bz2 /tmp
 ---> 4e3b98ce48f4
Step 6/12 : COPY entrypoint.sh /usr/local/bin/
 ---> dcea341c1684
Step 7/12 : ENV LANG en_US.utf8
 ---> Running in 0f5406729bd9
Removing intermediate container 0f5406729bd9
 ---> 42975b6f1ad0
Step 8/12 : ENV PGDATA /var/lib/opengauss/data
 ---> Running in 75cfae77f1a9
Removing intermediate container 75cfae77f1a9
 ---> bcf8821abff1
Step 9/12 : RUN set -eux;     yum install -y     bzip2     bzip2-devel     libaio-devel &&     groupadd -g 70 omm;      useradd -u 70 -g omm -m -s /bin/bash omm;      mkdir -p /var/lib/opengauss &&     mkdir -p /usr/local/opengauss &&     mkdir -p /var/run/opengauss  &&     mkdir /docker-entrypoint-initdb.d &&     tar -xf /tmp/openGauss-3.1.0-CentOS-64bit.tar.bz2 -C /usr/local/opengauss &&     chown -R omm:omm /var/lib/opengauss /home/omm /var/run/opengauss /docker-entrypoint-initdb.d /usr/local/opengauss/ &&     chmod 755 -R /usr/local/opengauss &&     rm -f /tmp/openGauss-3.1.0-CentOS-64bit.tar.bz2 &&     yum clean all &&     echo "export GAUSSHOME=/usr/local/opengauss"  >> /home/omm/.bashrc &&     echo "export PATH=\$GAUSSHOME/bin:\$PATH " >> /home/omm/.bashrc &&     echo "export LD_LIBRARY_PATH=\$GAUSSHOME/lib:\$LD_LIBRARY_PATH" >> /home/omm/.bashrc &&     echo "export GAUSSLOG=/var/lib/opengauss/data/pg_log" >> /home/omm/.bashrc &&     echo "export PGDATA=/var/lib/opengauss/data" >> /home/omm/.bashrc &&     echo "\set PROMPT1 'openGauss%R%#'" >> /home/omm/.gsqlrc &&     echo "\set PROMPT2 '#'" >> /home/omm/.gsqlrc &&     echo "\set PROMPT3 '>'" >> /home/omm/.gsqlrc &&     chown -R omm:omm /home/omm &&     chmod +x /usr/local/bin/gosu &&     chmod 755 /usr/local/bin/entrypoint.sh &&     ln -s /usr/local/bin/entrypoint.sh /
 ---> Running in ca8ec1b08a8b
+ yum install -y bzip2 bzip2-devel libaio-devel
Loaded plugins: fastestmirror, ovl
Determining fastest mirrors
 * base: mirrors.bupt.edu.cn
 * extras: mirrors.tuna.tsinghua.edu.cn
 * updates: mirrors.bupt.edu.cn
Resolving Dependencies
--> Running transaction check
---> Package bzip2.x86_64 0:1.0.6-13.el7 will be installed
---> Package bzip2-devel.x86_64 0:1.0.6-13.el7 will be installed
---> Package libaio-devel.x86_64 0:0.3.109-13.el7 will be installed
--> Processing Dependency: libaio(x86-64) = 0.3.109-13.el7 for package: libaio-devel-0.3.109-13.el7.x86_64
--> Running transaction check
---> Package libaio.x86_64 0:0.3.109-13.el7 will be installed
--> Finished Dependency Resolution
Dependencies Resolved
================================================================================
 Package              Arch           Version                 Repository    Size
================================================================================
Installing:
 bzip2                x86_64         1.0.6-13.el7            base          52 k
 bzip2-devel          x86_64         1.0.6-13.el7            base         218 k
 libaio-devel         x86_64         0.3.109-13.el7          base          13 k
Installing for dependencies:
 libaio               x86_64         0.3.109-13.el7          base          24 k
Transaction Summary
================================================================================
Install  3 Packages (+1 Dependent package)
Total download size: 307 k
Installed size: 510 k
Downloading packages:
warning: /var/cache/yum/x86_64/7/base/packages/bzip2-1.0.6-13.el7.x86_64.rpm: Header V3 RSA/SHA256 Signature, key ID f4a80eb5: NOKEY
Public key for bzip2-1.0.6-13.el7.x86_64.rpm is not installed
--------------------------------------------------------------------------------
Total                                              1.1 MB/s | 307 kB  00:00
Retrieving key from file:///etc/pki/rpm-gpg/RPM-GPG-KEY-CentOS-7
Importing GPG key 0xF4A80EB5:
 Userid     : "CentOS-7 Key (CentOS 7 Official Signing Key) <security@centos.org>"
 Fingerprint: 6341 ab27 53d7 8a78 a7c2 7bb1 24c6 a8a7 f4a8 0eb5
 Package    : centos-release-7-6.1810.2.el7.centos.x86_64 (@CentOS)
 From       : /etc/pki/rpm-gpg/RPM-GPG-KEY-CentOS-7
Running transaction check
Running transaction test
Transaction test succeeded
Running transaction
  Installing : libaio-0.3.109-13.el7.x86_64                                 1/4
  Installing : libaio-devel-0.3.109-13.el7.x86_64                           2/4
  Installing : bzip2-1.0.6-13.el7.x86_64                                    3/4
  Installing : bzip2-devel-1.0.6-13.el7.x86_64                              4/4
  Verifying  : bzip2-devel-1.0.6-13.el7.x86_64                              1/4
  Verifying  : libaio-0.3.109-13.el7.x86_64                                 2/4
  Verifying  : libaio-devel-0.3.109-13.el7.x86_64                           3/4
  Verifying  : bzip2-1.0.6-13.el7.x86_64                                    4/4
Installed:
  bzip2.x86_64 0:1.0.6-13.el7              bzip2-devel.x86_64 0:1.0.6-13.el7
  libaio-devel.x86_64 0:0.3.109-13.el7
Dependency Installed:
  libaio.x86_64 0:0.3.109-13.el7
Complete!
+ groupadd -g 70 omm
+ useradd -u 70 -g omm -m -s /bin/bash omm
+ mkdir -p /var/lib/opengauss
+ mkdir -p /usr/local/opengauss
+ mkdir -p /var/run/opengauss
+ mkdir /docker-entrypoint-initdb.d
+ tar -xf /tmp/openGauss-3.1.0-CentOS-64bit.tar.bz2 -C /usr/local/opengauss
+ chown -R omm:omm /var/lib/opengauss /home/omm /var/run/opengauss /docker-entrypoint-initdb.d /usr/local/opengauss/
+ chmod 755 -R /usr/local/opengauss
+ rm -f /tmp/openGauss-3.1.0-CentOS-64bit.tar.bz2
+ yum clean all
Loaded plugins: fastestmirror, ovl
Cleaning repos: base extras updates
Cleaning up list of fastest mirrors
+ echo 'export GAUSSHOME=/usr/local/opengauss'
+ echo 'export PATH=$GAUSSHOME/bin:$PATH '
+ echo 'export LD_LIBRARY_PATH=$GAUSSHOME/lib:$LD_LIBRARY_PATH'
+ echo 'export GAUSSLOG=/var/lib/opengauss/data/pg_log'
+ echo 'export PGDATA=/var/lib/opengauss/data'
+ echo '\set PROMPT1 '\''openGauss%R%#'\'''
+ echo '\set PROMPT2 '\''#'\'''
+ echo '\set PROMPT3 '\''>'\'''
+ chown -R omm:omm /home/omm
+ chmod +x /usr/local/bin/gosu
+ chmod 755 /usr/local/bin/entrypoint.sh
+ ln -s /usr/local/bin/entrypoint.sh /
Removing intermediate container ca8ec1b08a8b
 ---> 0e364541b2f6
Step 10/12 : ENTRYPOINT ["entrypoint.sh"]
 ---> Running in dcda8e469e67
Removing intermediate container dcda8e469e67
 ---> af95fbd45f53
Step 11/12 : EXPOSE 5432
 ---> Running in 466dbb3f7d47
Removing intermediate container 466dbb3f7d47
 ---> b3bdd285b2c7
Step 12/12 : CMD ["gaussdb"]
 ---> Running in 692f1ab11a8a
Removing intermediate container 692f1ab11a8a
 ---> b1953c88b748
Successfully built b1953c88b748
Successfully tagged opengauss:3.1.0
  openGauss Docker Image  3.1.0 is ready to be extended:
    --> opengauss:3.1.0
  Build completed in 144 seconds.

4. 启动测试

  • 大小
[root@ecs-lee 3.1.0]# docker image ls
REPOSITORY                                                        TAG                 IMAGE ID       CREATED         SIZE
opengauss                                                         3.1.0               b1953c88b748   4 minutes ago   633MB
  • run
[root@ecs-lee dockerfiles]# docker run --name opengauss --privileged=true -d opengauss:3.1.0
149952b8dca92dd08c9795da196aba92751badc3aa7b0aced0727cd8c0f4ca57
[root@ecs-lee dockerfiles]# docker logs -f opengauss
                        ********************************************************************************
                        Message: Default GS_XLOGDIR is /var/lib/opengauss/data/xlog.
                        Message: Default GS_NODENAME is opengauss.
                        Message: Default ENCODING is UTF-8.
                        Message: Default LOCALE is --no-locale.
                        Message: Default DBCOMPATIBILITY is PG.
                        Message: Default GS_PASSWORD is sHZ3Aa1!.
                        ********************************************************************************
                        Message: The supplied GS_PASSWORD sHZ3Aa1! is meet requirements.
The files belonging to this database system will be owned by user "omm".
This user must also own the server process.
The database cluster will be initialized with locale "C".
The default text search configuration will be set to "english".
fixing permissions on existing directory /var/lib/opengauss/data ... ok
creating subdirectories ... ok
selecting default max_connections ... 100
selecting default shared_buffers ... 32MB
creating configuration files ... ok
Begin init undo subsystem meta.
[INIT UNDO] Init undo subsystem meta successfully.
creating template1 database in /var/lib/opengauss/data/base/1 ... The core dump path is an invalid directory
2022-10-09 07:46:18.999 [unknown] [unknown] localhost 140028811486336 0[0:0#0]  [BACKEND] WARNING:  macAddr is 578/2886795267, sysidentifier is 37923857/208181, randomNum is 2805673269
ok
initializing pg_authid ... ok
setting password ... ok
initializing dependencies ... ok
loading PL/pgSQL server-side language ... ok
creating system views ... ok
creating performance views ... ok
loading system objects' descriptions ... ok
creating collations ... ok
creating conversions ... ok
creating dictionaries ... ok
setting privileges on built-in objects ... ok
initialize global configure for bucketmap length ... ok
creating information schema ... ok
loading foreign-data wrapper for distfs access ... ok
loading foreign-data wrapper for log access ... ok
...
...
ACTION:  Please refer to backend log for more details.
^C
  • 测试
[root@ecs-lee dockerfiles]# docker exec -it opengauss bash
[root@149952b8dca9 /]# su - omm
[omm@149952b8dca9 ~]$ gsql -d postgres -p5432 -r
gsql ((openGauss 3.1.0 build 4e931f9a) compiled at 2022-09-29 14:19:24 commit 0 last mr  )
Non-SSL connection (SSL connection is recommended when requiring high-security)
Type "help" for help.
openGauss=#select version();
                                                                       version
------------------------------------------------------------------------------------------------------------------------------------------------------
 (openGauss 3.1.0 build 4e931f9a) compiled at 2022-09-29 14:19:24 commit 0 last mr   on x86_64-unknown-linux-gnu, compiled by g++ (GCC) 7.3.0, 64-bit
(1 row)
openGauss=#

5. 主备脚本测试

[root@ecs-lee dockerfiles]# sh create_master_slave.sh
Please input OG_SUBNET (容器所在网段) [172.11.0.0/24]:
OG_SUBNET set 172.11.0.0/24
Please input GS_PASSWORD (定义数据库密码)[Enmo@123]:
GS_PASSWORD set Enmo@123
Please input MASTER_IP (主库IP)[172.11.0.101]:
MASTER_IP set 172.11.0.101
Please input SLAVE_1_IP (备库IP)[172.11.0.102]:
SLAVE_1_IP set 172.11.0.102
Please input MASTER_HOST_PORT (主库数据库服务端口)[5432]:
MASTER_HOST_PORT set 5432
Please input MASTER_LOCAL_PORT (主库通信端口)[5434]:
MASTER_LOCAL_PORT set 5434
Please input SLAVE_1_HOST_PORT (备库数据库服务端口)[6432]:
SLAVE_1_HOST_PORT set 6432
Please input SLAVE_1_LOCAL_PORT (备库通信端口)[6434]:
SLAVE_1_LOCAL_PORT set 6434
Please input MASTER_NODENAME [opengauss_master]:
MASTER_NODENAME set opengauss_master
Please input SLAVE_NODENAME [opengauss_slave1]:
SLAVE_NODENAME set opengauss_slave1
Please input openGauss VERSION [1.0.1]:
openGauss VERSION set 1.0.1
starting
41cc302ad46e9d13015684bbdfd28105cac7c1b0f3dd1ba3b73d95f87de45bb7
OpenGauss Database Network Created.
Unable to find image 'opengauss:1.0.1' locally
^C
[root@ecs-lee dockerfiles]# docker network rm opengaussnetwork
opengaussnetwork
[root@ecs-lee dockerfiles]# sh create_master_slave.sh
Please input OG_SUBNET (容器所在网段) [172.11.0.0/24]:
OG_SUBNET set 172.11.0.0/24
Please input GS_PASSWORD (定义数据库密码)[Enmo@123]:
GS_PASSWORD set Enmo@123
Please input MASTER_IP (主库IP)[172.11.0.101]:
MASTER_IP set 172.11.0.101
Please input SLAVE_1_IP (备库IP)[172.11.0.102]:
SLAVE_1_IP set 172.11.0.102
Please input MASTER_HOST_PORT (主库数据库服务端口)[5432]:
MASTER_HOST_PORT set 5432
Please input MASTER_LOCAL_PORT (主库通信端口)[5434]:
MASTER_LOCAL_PORT set 5434
Please input SLAVE_1_HOST_PORT (备库数据库服务端口)[6432]:
SLAVE_1_HOST_PORT set 6432
Please input SLAVE_1_LOCAL_PORT (备库通信端口)[6434]:
SLAVE_1_LOCAL_PORT set 6434
Please input MASTER_NODENAME [opengauss_master]:
MASTER_NODENAME set opengauss_master
Please input SLAVE_NODENAME [opengauss_slave1]:
SLAVE_NODENAME set opengauss_slave1
Please input openGauss VERSION [1.0.1]: 3.1.0
openGauss VERSION set 3.1.0
starting
aa0b66ab132d25d70c94e65641ea5cabb02f2ac3e56def4b65f9a4f07b848580
OpenGauss Database Network Created.
8f4a6be903997764b4bcf9f7d3117ed9f1ddd0c7e303d06b71657bb27386489d
OpenGauss Database Master Docker Container created.
845434cdb53f8c64b396ec46db2d83cbc9da0ade52389a65ad2b498016ebb3c5
OpenGauss Database Slave1 Docker Container created.
[root@ecs-lee dockerfiles]# docker exec -it opengauss_master bash
[root@opengauss_master /]# su - omm
Last login: Sun Oct  9 07:57:32 UTC 2022 on pts/0
[omm@opengauss_master ~]$ gs_ctl query -D /var/lib/opengauss/data/
[2022-10-09 07:58:03.329][429][][gs_ctl]: gs_ctl query ,datadir is /var/lib/opengauss/data
 HA state:
        local_role                     : Primary
        static_connections             : 1
        db_state                       : Normal
        detail_information             : Normal
 Senders info:
        sender_pid                     : 339
        local_role                     : Primary
        peer_role                      : Standby
        peer_state                     : Normal
        state                          : Streaming
        sender_sent_location           : 0/40001C8
        sender_write_location          : 0/40001C8
        sender_flush_location          : 0/40001C8
        sender_replay_location         : 0/40001C8
        receiver_received_location     : 0/40001C8
        receiver_write_location        : 0/40001C8
        receiver_flush_location        : 0/40001C8
        receiver_replay_location       : 0/40001C8
        sync_percent                   : 100%
        sync_state                     : Sync
        sync_priority                  : 1
        sync_most_available            : On
        channel                        : 172.11.0.101:5434-->172.11.0.102:51754
 Receiver info:
No information

四、pr提交

1. clone

[root@ecs-lee lee]# git clone https://gitee.com/lee1002/openGauss-server.git
Cloning into 'openGauss-server'...
remote: Enumerating objects: 67552, done.
remote: Counting objects: 100% (20832/20832), done.
remote: Compressing objects: 100% (6840/6840), done.
remote: Total 67552 (delta 15061), reused 17403 (delta 13878), pack-reused 46720
Receiving objects: 100% (67552/67552), 207.48 MiB | 1.37 MiB/s, done.
Resolving deltas: 100% (47377/47377), done.

2. 添加你的代码

[root@ecs-lee lee]# cd openGauss-server/docker/dockerfiles/
[root@ecs-lee dockerfiles]# ls
3.0.0  buildDockerImage.sh  create_master_slave.sh
[root@ecs-lee dockerfiles]# ls
3.0.0  3.1.0  buildDockerImage.sh  create_master_slave.sh
[root@ecs-lee dockerfiles]# ls 3.1.0/
dockerfile_amd  entrypoint.sh  sha256_file_amd64

3. add && commit && push

[root@ecs-lee dockerfiles]# git add .
[root@ecs-lee dockerfiles]# git commit -m "add 3.1.0 amd container"
[master f3676fd] add 3.1.0 amd container
 3 files changed, 519 insertions(+)
 create mode 100644 docker/dockerfiles/3.1.0/dockerfile_amd
 create mode 100644 docker/dockerfiles/3.1.0/entrypoint.sh
 create mode 100644 docker/dockerfiles/3.1.0/sha256_file_amd64
[root@ecs-lee dockerfiles]# git push origin master
Username for 'https://gitee.com': ***********
Password for 'https://***********@gitee.com':
Counting objects: 11, done.
Delta compression using up to 4 threads.
Compressing objects: 100% (8/8), done.
Writing objects: 100% (8/8), 6.38 KiB | 0 bytes/s, done.
Total 8 (delta 2), reused 0 (delta 0)
remote: Powered by GITEE.COM [GNK-6.4]
To https://gitee.com/lee1002/openGauss-server.git
   6f87123..f3676fd  master -> master

4. 社区提交

  • Pull Requests
    f7918ab850abcb6b03dc34ace5f36969_20221009-82667024-4773-4f33-9951-0703238262e4.png
  • 创建 Pull Request
    742ff9f94141439711fa9e535a7d117b_20221009-4e05fce3-e437-4b48-aa9a-bda54c6aebad.png
  • 等待commit审查合入
    360280eb5ad0962790113ef988a7f971_20221009-7cb7fc14-ebc6-4877-980e-7254cafb6876.png

五、优化总结

  • 提供openGauss 3.1.0版本amd容器打包方式
  • 通过builder两阶段构建减少镜像大小
  • 通过wget和builder方式优化了必须在本地存放相应安装包问题
  • 删除部分无效代码
  • 通过entrypoint.sh添加自定义参数并给予默认值
参数名 默认值 功能
GS_XLOGDIR ${PGDATA}/xlog xlog目录默认值为
GS_NODENAME opengauss 安装时nodename
ENCODING UTF-8 字符集编码
LOCALE –no-locale LOCALE
DBCOMPATIBILITY PG 数据库兼容性
GS_PASSWORD 8 位数随机密码

密码

相关实践学习
借助OSS搭建在线教育视频课程分享网站
本教程介绍如何基于云服务器ECS和对象存储OSS,搭建一个在线教育视频课程分享网站。
7天玩转云服务器
云服务器ECS(Elastic Compute Service)是一种弹性可伸缩的计算服务,可降低 IT 成本,提升运维效率。本课程手把手带你了解ECS、掌握基本操作、动手实操快照管理、镜像管理等。了解产品详情:&nbsp;https://www.aliyun.com/product/ecs
目录
相关文章
|
4月前
|
运维 Kubernetes 测试技术
容器技术:优化软件测试流程的利器
本文介绍了容器技术的概念、优势和历史发展,对比了容器与虚拟机的区别,并提及了Docker和Kubernetes等常见容器技术。容器作为轻量级虚拟化工具,提供高效、灵活的应用部署方式,广泛应用于软件开发、云计算和微服务架构。随着技术演进,容器将在边缘计算、人工智能等领域发挥更大作用,推动行业变革。
74 3
|
1月前
|
运维 Kubernetes 开发者
使用容器化技术优化你的应用:从理论到实践
【8月更文挑战第7天】容器化技术通过提供一致的运行环境、高效的部署与扩展能力以及资源优化,为现代应用的开发和运维带来了显著的便利。通过本文的介绍,你应该对如何使用Docker来优化你的应用有了初步的了解。从编写Dockerfile到构建镜像,再到运行容器和使用Docker Compose管理多容器应用,每一步都是向更高效、更可靠的应用交付迈进的坚实步伐。
|
30天前
|
存储 缓存 监控
在Linux中,如何优化虚拟机和容器的性能和资源使用?
在Linux中,如何优化虚拟机和容器的性能和资源使用?
|
1月前
|
Dragonfly Docker 容器
实时数仓Hologres容器镜像问题之优化私有化部署如何解决
容器镜像常遇问题包括:将过多组件打包至单一容器、使用systemd导致状态不一致、私有部署中传输未优化的镜像包及基础镜像频繁下发致网络拥堵。应采用轻量化基础镜像,明确镜像版本,并利用镜像层复用来优化。[了解更多](https://developer.aliyun.com/ask/666077)。 避免容器臃肿的方法是选用精简基础镜像,固定镜像版本,并通过镜像层复用来减少重复内容,实现高效部署。[查看详情](https://developer.aliyun.com/ask/666078)。
32 0
|
1月前
|
数据采集 监控 Kubernetes
Job类日志采集问题之iLogtail以减小容器发现和开始采集的延时如何优化
Job类日志采集问题之iLogtail以减小容器发现和开始采集的延时如何优化
|
4月前
|
缓存 关系型数据库 数据库
【Docker 专栏】Docker 与容器化数据库的集成与优化
【5月更文挑战第9天】本文探讨了Docker与容器化数据库集成的优势,如快速部署、环境一致性、资源隔离和可扩展性,并列举了常见容器化数据库(如MySQL、PostgreSQL和MongoDB)。讨论了集成方法、注意事项、优化策略,包括资源调整、缓存优化和监控告警。此外,强调了数据备份、恢复测试及性能评估的重要性。未来,随着技术发展,二者的集成将更紧密,为数据管理带来更多可能性。掌握此技术将应对数字化时代的机遇与挑战。
183 3
【Docker 专栏】Docker 与容器化数据库的集成与优化
|
3月前
|
安全 Java 大数据
Java性能优化(七)-多线程调优-并发容器的使用
Java性能优化(七)-多线程调优-并发容器的使用
46 0
|
4月前
|
Java Maven Docker
【SpringBoot系列】SpringBoot应用程序容器化及容器优化
【4月更文挑战第4天】SpringBoot应用程序容器化及容器大小优化
84 0
|
4月前
|
测试技术 Go 云计算
Go语言优化云计算与容器化环境的策略与最佳实践
【2月更文挑战第15天】在云计算和容器化环境中,Go语言的应用和优化策略对于提高系统的性能和效率至关重要。本文深入探讨了如何使用Go语言优化云计算和容器化环境,包括内存管理、并发编程、代码优化等方面的最佳实践,旨在帮助开发者充分利用Go语言的优势,提升系统的整体性能。
|
4月前
|
Kubernetes Linux 开发工具
容器开发运维人员的 Linux 操作机配置优化建议
容器开发运维人员的 Linux 操作机配置优化建议