范文健康探索娱乐情感热点
投稿投诉
热点动态
科技财经
情感日志
励志美文
娱乐时尚
游戏搞笑
探索旅游
历史星座
健康养生
美丽育儿
范文作文
教案论文

Docker实践之镜像启动及常用命令

  前面简单的介绍了如何在Linux中安装 Docker ,这节内容,我们学习Docker镜像启动
  我们Docker启动镜像从哪里来呢?镜像由我们自己或者他人构建,构建好的镜像可以直接放在本地或者上传到远程镜像仓库。当我们运行一个Docker镜像时,会先在本地查找是否存在所要运行的镜像,如果没有则会去远程镜像仓库拉取,默认为官方的镜像仓库,当然,我们也可以改为自己的私有镜像仓库。接下来,我们先了解几个简单的命令。 docker images 列出本地主机中的镜像 docker pull [OPTIONS] 拉取镜像仓库中的镜像 docker search [OPTIONS] 搜索仓库中的镜像 docker rmi [OPTIONS] 删除本地镜像 docker rm [OPTIONS] 删除容器 docker run [OPTIONS] 启动镜像,先检查本地是否存在镜像,不存在则远程仓库下载 docker build [OPTIONS] 构建镜像 docker ps [OPTIONS] 运行中的镜像容器 docker cp [OPTIONS] 宿主机与容器之间的文件复制 启动Nginx镜像
  我们直接在安装好Docker的主机上执行 docker run nginx
  我们从运行日志可以看到这样的字眼: 1 2 Unable to find image "nginx:latest" locally latest: Pulling from library/nginx
  docker发现本地不存在nginx的镜像文件,便直接去仓库中查找下载并运行,因为我们没有让镜像后台运行,所以这次运行起来的容器会随着这次远程连接断开而停止。当我按下 ctrl+c 时,容器便会停止1 2 3 4 5 6 7 8 9 10 ^C2021/12/28 03:24:32 [notice] 1#1: signal 2 (SIGINT) received, exiting 2021/12/28 03:24:32 [notice] 31#31: exiting 2021/12/28 03:24:32 [notice] 32#32: exiting 2021/12/28 03:24:32 [notice] 31#31: exit 2021/12/28 03:24:32 [notice] 32#32: exit 2021/12/28 03:24:32 [notice] 1#1: signal 17 (SIGCHLD) received from 31 2021/12/28 03:24:32 [notice] 1#1: worker process 31 exited with code 0 2021/12/28 03:24:32 [notice] 1#1: worker process 32 exited with code 0 2021/12/28 03:24:32 [notice] 1#1: exit
  如果要让容器后台运行,则需要在启动时加 -d 这个参数,1 2 3 [root@VM-12-3-centos ~]# docker run -d nginx 8dd8b3dd27aa28f913bea43de632d105c17901561d69c502b4433e0f473ed453
  我们来看一下当前运行中的容器 1 2 3 4 [root@VM-12-3-centos ~]# docker ps CONTAINER ID   IMAGE     COMMAND                  CREATED          STATUS          PORTS     NAMES 8dd8b3dd27aa   nginx     "/docker-entrypoint.…"   23 seconds ago   Up 23 seconds   80/tcp    goofy_faraday
  可以看到,我们的nginx是启动起来了,但是,我们并不能访问它。容器有自己的一套虚拟系统,如:网络、文件。如果我们需要访问,则需要给容器和宿主机做一个映射,让宿主机和容器能够交互。这里,我们就给nginx增加端口和配置文件映射。我为了省事,就直接把容器中的配置文件复制出来用 1 docker cp 8dd8b3dd27aa:/etc/nginx/ ~/
  接下来,我们便来建立这个映射关系 1 docker run -d --name nginx-c -v /root/nginx/:/etc/nginx/ -p 8888:80 nginx
  来看看容器是否启动成功 1 2 3 4 [root@VM-12-3-centos nginx]# docker ps CONTAINER ID   IMAGE     COMMAND                  CREATED         STATUS         PORTS                                   NAMES 5ae0319e1795   nginx     "/docker-entrypoint.…"   7 seconds ago   Up 6 seconds   0.0.0.0:8888->80/tcp, :::8888->80/tcp   nginx-c
  这时候,我们便能访问我们的nginx服务,
  前面已经说到,容器有自己的虚拟系统,如果需要持久化的数据不映射到宿主机上,那么当容器销毁时,数据也会随之丢失,所以,我们在用容器运行时,一定要做好数据的保存方式。 Docker常用命令
  在前面,我们列出了几个常用的Docker命令,这里,我们把这几个常用命令稍微讲解一下, docker ps
  ps主要是查询正常运行的容器
  docker ps 是当前正在运行的容器 1 2 3 4 [root@VM-12-3-centos nginx]# docker ps CONTAINER ID   IMAGE     COMMAND                  CREATED             STATUS             PORTS                                   NAMES 5ae0319e1795   nginx     "/docker-entrypoint.…"   About an hour ago   Up About an hour   0.0.0.0:8888->80/tcp, :::8888->80/tcp   nginx-c
  这里面的 CONTAINER ID 很重要,后面我们的很多操作都需要基于这个CONTAINER ID 或者NAMES 。
  docker ps -a 则是列出运行中和停止中的所有容器,docker start/stop/restart/rm [CONTAINER ID]
  这几个参数这是启动/停止/重启/删除容器的参数,如: docker restart 5ae0319e1795 ,如果要删除容器,必须要先停止,否则会提示1 rror response from daemon: You cannot remove a running container 5ae0319e1795f3295247e0fa14c1d19054f59578381d8367e8955f22eebdd182. Stop the container before attempting removal or force remove docker run
  docker run [OPTIONS] IMAGE [COMMAND] [ARG…],它的运行参数就比较复杂了, 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 [root@VM-12-3-centos nginx]# docker run --help  Usage:  docker run [OPTIONS] IMAGE [COMMAND] [ARG...]  Run a command in a new container  Options:       --add-host list                  Add a custom host-to-IP mapping (host:ip)   -a, --attach list                    Attach to STDIN, STDOUT or STDERR       --blkio-weight uint16            Block IO (relative weight), between 10 and 1000, or 0 to disable (default 0)       --blkio-weight-device list       Block IO weight (relative device weight) (default [])       --cap-add list                   Add Linux capabilities       --cap-drop list                  Drop Linux capabilities       --cgroup-parent string           Optional parent cgroup for the container       --cgroupns string                Cgroup namespace to use (host|private)                                        "host":    Run the container in the Docker host"s cgroup namespace                                        "private": Run the container in its own private cgroup namespace                                        "":        Use the cgroup namespace as configured by the                                                   default-cgroupns-mode option on the daemon (default)       --cidfile string                 Write the container ID to the file       --cpu-period int                 Limit CPU CFS (Completely Fair Scheduler) period       --cpu-quota int                  Limit CPU CFS (Completely Fair Scheduler) quota       --cpu-rt-period int              Limit CPU real-time period in microseconds       --cpu-rt-runtime int             Limit CPU real-time runtime in microseconds   -c, --cpu-shares int                 CPU shares (relative weight)       --cpus decimal                   Number of CPUs       --cpuset-cpus string             CPUs in which to allow execution (0-3, 0,1)       --cpuset-mems string             MEMs in which to allow execution (0-3, 0,1)   -d, --detach                         Run container in background and print container ID       --detach-keys string             Override the key sequence for detaching a container       --device list                    Add a host device to the container       --device-cgroup-rule list        Add a rule to the cgroup allowed devices list       --device-read-bps list           Limit read rate (bytes per second) from a device (default [])       --device-read-iops list          Limit read rate (IO per second) from a device (default [])       --device-write-bps list          Limit write rate (bytes per second) to a device (default [])       --device-write-iops list         Limit write rate (IO per second) to a device (default [])       --disable-content-trust          Skip image verification (default true)       --dns list                       Set custom DNS servers       --dns-option list                Set DNS options       --dns-search list                Set custom DNS search domains       --domainname string              Container NIS domain name       --entrypoint string              Overwrite the default ENTRYPOINT of the image   -e, --env list                       Set environment variables       --env-file list                  Read in a file of environment variables       --expose list                    Expose a port or a range of ports       --gpus gpu-request               GPU devices to add to the container ("all" to pass all GPUs)       --group-add list                 Add additional groups to join       --health-cmd string              Command to run to check health       --health-interval duration       Time between running the check (ms|s|m|h) (default 0s)       --health-retries int             Consecutive failures needed to report unhealthy       --health-start-period duration   Start period for the container to initialize before starting health-retries countdown (ms|s|m|h) (default 0s)       --health-timeout duration        Maximum time to allow one check to run (ms|s|m|h) (default 0s)       --help                           Print usage   -h, --hostname string                Container host name       --init                           Run an init inside the container that forwards signals and reaps processes   -i, --interactive                    Keep STDIN open even if not attached       --ip string                      IPv4 address (e.g., 172.30.100.104)       --ip6 string                     IPv6 address (e.g., 2001:db8::33)       --ipc string                     IPC mode to use       --isolation string               Container isolation technology       --kernel-memory bytes            Kernel memory limit   -l, --label list                     Set meta data on a container       --label-file list                Read in a line delimited file of labels       --link list                      Add link to another container       --link-local-ip list             Container IPv4/IPv6 link-local addresses       --log-driver string              Logging driver for the container       --log-opt list                   Log driver options       --mac-address string             Container MAC address (e.g., 92:d0:c6:0a:29:33)   -m, --memory bytes                   Memory limit       --memory-reservation bytes       Memory soft limit       --memory-swap bytes              Swap limit equal to memory plus swap: "-1" to enable unlimited swap       --memory-swappiness int          Tune container memory swappiness (0 to 100) (default -1)       --mount mount                    Attach a filesystem mount to the container       --name string                    Assign a name to the container       --network network                Connect a container to a network       --network-alias list             Add network-scoped alias for the container       --no-healthcheck                 Disable any container-specified HEALTHCHECK       --oom-kill-disable               Disable OOM Killer       --oom-score-adj int              Tune host"s OOM preferences (-1000 to 1000)       --pid string                     PID namespace to use       --pids-limit int                 Tune container pids limit (set -1 for unlimited)       --platform string                Set platform if server is multi-platform capable       --privileged                     Give extended privileges to this container   -p, --publish list                   Publish a container"s port(s) to the host   -P, --publish-all                    Publish all exposed ports to random ports       --pull string                    Pull image before running ("always"|"missing"|"never") (default "missing")       --read-only                      Mount the container"s root filesystem as read only       --restart string                 Restart policy to apply when a container exits (default "no")       --rm                             Automatically remove the container when it exits       --runtime string                 Runtime to use for this container       --security-opt list              Security Options       --shm-size bytes                 Size of /dev/shm       --sig-proxy                      Proxy received signals to the process (default true)       --stop-signal string             Signal to stop a container (default "SIGTERM")       --stop-timeout int               Timeout (in seconds) to stop a container       --storage-opt list               Storage driver options for the container       --sysctl map                     Sysctl options (default map[])       --tmpfs list                     Mount a tmpfs directory   -t, --tty                            Allocate a pseudo-TTY       --ulimit ulimit                  Ulimit options (default [])   -u, --user string                    Username or UID (format: [:])       --userns string                  User namespace to use       --uts string                     UTS namespace to use   -v, --volume list                    Bind mount a volume       --volume-driver string           Optional volume driver for the container       --volumes-from list              Mount volumes from the specified container(s)   -w, --workdir string                 Working directory inside the container
  这里还是只介绍几个常用的命令参数吧, -d: 后台运行容器 -P: 容器内部端口随机映射到主机的端口 -p: 指定端口映射 –name: 指定一个容器的名称 –cpuset: 指定CPU运行 -m(–memory): 设置容器内存最大值(单位可以为 b,k,M,g;最小为4M),除了内存限制,还可以设置内存+交换分区大小(–memory-swap) –link=[]: 链接到另一个容器 -v(–volume): 指定容器与宿主机的映射目录
  运行示例 docker run -d --name nginx-cc -v /root/nginx/:/etc/nginx/ -p 9999:80 -m 256M nginx docker cp
  cp命令主要是用于宿主机和容器间的文件复制,一般格式如下:
  docker cp [OPTIONS] 容器名/容器Id:容器文件路径 宿主机文件路径 从容器复制到宿主机
  docker cp [OPTIONS] 宿主机文件路径 容器名/容器Id:容器文件路径 从宿主机复制到容器中 docker inspect
  inspect主要是查看容器或者镜像元数据,如: 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144 145 146 147 148 149 150 151 152 153 154 155 156 157 158 159 160 161 162 163 164 165 166 167 168 169 170 171 172 173 174 175 176 177 178 179 180 181 182 183 184 185 186 187 188 189 190 191 192 193 194 195 196 197 198 199 200 201 202 203 204 205 206 207 208 209 210 211 212 213 214 215 216 217 218 219 220 221 222 223 224 225 226 227 228 229 230 231 232 233 234 235 236 237 238 239 240 241 242 243 244 [root@VM-12-3-centos nginx]# docker inspect cd1309c02a5e [     {         "Id": "cd1309c02a5efc9855b0987e6dba44c6b858162f14dc7fbae4138b1ca4361dae",         "Created": "2021-12-28T05:54:50.381961654Z",         "Path": "/docker-entrypoint.sh",         "Args": [             "nginx",             "-g",             "daemon off;"         ],         "State": {             "Status": "running",             "Running": true,             "Paused": false,             "Restarting": false,             "OOMKilled": false,             "Dead": false,             "Pid": 3172754,             "ExitCode": 0,             "Error": "",             "StartedAt": "2021-12-28T05:54:50.720774527Z",             "FinishedAt": "0001-01-01T00:00:00Z"         },         "Image": "sha256:f6987c8d6ed59543e9f34327c23e12141c9bad1916421278d720047ccc8e1bee",         "ResolvConfPath": "/var/lib/docker/containers/cd1309c02a5efc9855b0987e6dba44c6b858162f14dc7fbae4138b1ca4361dae/resolv.conf",         "HostnamePath": "/var/lib/docker/containers/cd1309c02a5efc9855b0987e6dba44c6b858162f14dc7fbae4138b1ca4361dae/hostname",         "HostsPath": "/var/lib/docker/containers/cd1309c02a5efc9855b0987e6dba44c6b858162f14dc7fbae4138b1ca4361dae/hosts",         "LogPath": "/var/lib/docker/containers/cd1309c02a5efc9855b0987e6dba44c6b858162f14dc7fbae4138b1ca4361dae/cd1309c02a5efc9855b0987e6dba44c6b858162f14dc7fbae4138b1ca4361dae-json.log",         "Name": "/nginx-cc",         "RestartCount": 0,         "Driver": "overlay2",         "Platform": "linux",         "MountLabel": "",         "ProcessLabel": "",         "AppArmorProfile": "",         "ExecIDs": null,         "HostConfig": {             "Binds": [                 "/root/nginx/:/etc/nginx/"             ],             "ContainerIDFile": "",             "LogConfig": {                 "Type": "json-file",                 "Config": {}             },             "NetworkMode": "default",             "PortBindings": {                 "80/tcp": [                     {                         "HostIp": "",                         "HostPort": "9999"                     }                 ]             },             "RestartPolicy": {                 "Name": "no",                 "MaximumRetryCount": 0             },             "AutoRemove": false,             "VolumeDriver": "",             "VolumesFrom": null,             "CapAdd": null,             "CapDrop": null,             "CgroupnsMode": "host",             "Dns": [],             "DnsOptions": [],             "DnsSearch": [],             "ExtraHosts": null,             "GroupAdd": null,             "IpcMode": "private",             "Cgroup": "",             "Links": null,             "OomScoreAdj": 0,             "PidMode": "",             "Privileged": false,             "PublishAllPorts": false,             "ReadonlyRootfs": false,             "SecurityOpt": null,             "UTSMode": "",             "UsernsMode": "",             "ShmSize": 67108864,             "Runtime": "runc",             "ConsoleSize": [                 0,                 0             ],             "Isolation": "",             "CpuShares": 0,             "Memory": 268435456,             "NanoCpus": 0,             "CgroupParent": "",             "BlkioWeight": 0,             "BlkioWeightDevice": [],             "BlkioDeviceReadBps": null,             "BlkioDeviceWriteBps": null,             "BlkioDeviceReadIOps": null,             "BlkioDeviceWriteIOps": null,             "CpuPeriod": 0,             "CpuQuota": 0,             "CpuRealtimePeriod": 0,             "CpuRealtimeRuntime": 0,             "CpusetCpus": "",             "CpusetMems": "",             "Devices": [],             "DeviceCgroupRules": null,             "DeviceRequests": null,             "KernelMemory": 0,             "KernelMemoryTCP": 0,             "MemoryReservation": 0,             "MemorySwap": 536870912,             "MemorySwappiness": null,             "OomKillDisable": false,             "PidsLimit": null,             "Ulimits": null,             "CpuCount": 0,             "CpuPercent": 0,             "IOMaximumIOps": 0,             "IOMaximumBandwidth": 0,             "MaskedPaths": [                 "/proc/asound",                 "/proc/acpi",                 "/proc/kcore",                 "/proc/keys",                 "/proc/latency_stats",                 "/proc/timer_list",                 "/proc/timer_stats",                 "/proc/sched_debug",                 "/proc/scsi",                 "/sys/firmware"             ],             "ReadonlyPaths": [                 "/proc/bus",                 "/proc/fs",                 "/proc/irq",                 "/proc/sys",                 "/proc/sysrq-trigger"             ]         },         "GraphDriver": {             "Data": {                 "LowerDir": "/var/lib/docker/overlay2/8731f576cc3fb7511f9f9761e58d8480e2e6249889119962b9d0809e2105310b-init/diff:/var/lib/docker/overlay2/618f7e094534925da63be88e1409cf0020cc0b6561b266fafca8df4d77c07cf3/diff:/var/lib/docker/overlay2/05f6ffd411a6ec713698611d0a3732d55c7d6bf13105c736492734f1c32965cb/diff:/var/lib/docker/overlay2/47646e0e9a17db5299cbd0cbdc8a7ac300be03ed728f60fb331b6c236680859a/diff:/var/lib/docker/overlay2/fd51e460d7679d64ac84fed908c691f98ab6bcce6cddfaa947ace1071f541a52/diff:/var/lib/docker/overlay2/bebc9613df0154882c65ba436f084e864152fb77b9ff25f796d5f56bf8af7ff1/diff:/var/lib/docker/overlay2/5291486555a45b2adddeb8dbf77548c892f222b96c93208ccc87180025fb2a05/diff",                 "MergedDir": "/var/lib/docker/overlay2/8731f576cc3fb7511f9f9761e58d8480e2e6249889119962b9d0809e2105310b/merged",                 "UpperDir": "/var/lib/docker/overlay2/8731f576cc3fb7511f9f9761e58d8480e2e6249889119962b9d0809e2105310b/diff",                 "WorkDir": "/var/lib/docker/overlay2/8731f576cc3fb7511f9f9761e58d8480e2e6249889119962b9d0809e2105310b/work"             },             "Name": "overlay2"         },         "Mounts": [             {                 "Type": "bind",                 "Source": "/root/nginx",                 "Destination": "/etc/nginx",                 "Mode": "",                 "RW": true,                 "Propagation": "rprivate"             }         ],         "Config": {             "Hostname": "cd1309c02a5e",             "Domainname": "",             "User": "",             "AttachStdin": false,             "AttachStdout": false,             "AttachStderr": false,             "ExposedPorts": {                 "80/tcp": {}             },             "Tty": false,             "OpenStdin": false,             "StdinOnce": false,             "Env": [                 "PATH=/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin",                 "NGINX_VERSION=1.21.4",                 "NJS_VERSION=0.7.0",                 "PKG_RELEASE=1~bullseye"             ],             "Cmd": [                 "nginx",                 "-g",                 "daemon off;"             ],             "Image": "nginx",             "Volumes": null,             "WorkingDir": "",             "Entrypoint": [                 "/docker-entrypoint.sh"             ],             "OnBuild": null,             "Labels": {                 "maintainer": "NGINX Docker Maintainers "             },             "StopSignal": "SIGQUIT"         },         "NetworkSettings": {             "Bridge": "",             "SandboxID": "f8caff2c6de91132584c5f577d8fa7a695d718a8fe91913842f8120a1fd755b2",             "HairpinMode": false,             "LinkLocalIPv6Address": "",             "LinkLocalIPv6PrefixLen": 0,             "Ports": {                 "80/tcp": [                     {                         "HostIp": "0.0.0.0",                         "HostPort": "9999"                     },                     {                         "HostIp": "::",                         "HostPort": "9999"                     }                 ]             },             "SandboxKey": "/var/run/docker/netns/f8caff2c6de9",             "SecondaryIPAddresses": null,             "SecondaryIPv6Addresses": null,             "EndpointID": "1840b9975ae073a167161b927ba9b5cbd5f523afc1deba41b935de41ed254025",             "Gateway": "172.17.0.1",             "GlobalIPv6Address": "",             "GlobalIPv6PrefixLen": 0,             "IPAddress": "172.17.0.3",             "IPPrefixLen": 16,             "IPv6Gateway": "",             "MacAddress": "02:42:ac:11:00:03",             "Networks": {                 "bridge": {                     "IPAMConfig": null,                     "Links": null,                     "Aliases": null,                     "NetworkID": "fed3528a99f04939a651d8b67872ec51e7b99dff8338726598e3ce0300ae7c93",                     "EndpointID": "1840b9975ae073a167161b927ba9b5cbd5f523afc1deba41b935de41ed254025",                     "Gateway": "172.17.0.1",                     "IPAddress": "172.17.0.3",                     "IPPrefixLen": 16,                     "IPv6Gateway": "",                     "GlobalIPv6Address": "",                     "GlobalIPv6PrefixLen": 0,                     "MacAddress": "02:42:ac:11:00:03",                     "DriverOpts": null                 }             }         }     } ]
  从返回的信息中,我们可以得到,启动时所设置的启动参数。如: 1 2 3 4 5 6 7 8 9 10 11  "PortBindings": {                 "80/tcp": [                     {                         "HostIp": "",                         "HostPort": "9999"                     }                 ]             }, "Binds": [                 "/root/nginx/:/etc/nginx/"             ]
  如果,那天我们忘记之前容器启动的参数时,便可以通过 inspect 来帮我们找回来。docker logs
  logs主要是查询docker容器的运行日志,如: 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 [root@VM-12-3-centos ~]# docker logs 5ae0319e1795 /docker-entrypoint.sh: /docker-entrypoint.d/ is not empty, will attempt to perform configuration /docker-entrypoint.sh: Looking for shell scripts in /docker-entrypoint.d/ /docker-entrypoint.sh: Launching /docker-entrypoint.d/10-listen-on-ipv6-by-default.sh 10-listen-on-ipv6-by-default.sh: info: IPv6 listen already enabled /docker-entrypoint.sh: Launching /docker-entrypoint.d/20-envsubst-on-templates.sh /docker-entrypoint.sh: Launching /docker-entrypoint.d/30-tune-worker-processes.sh /docker-entrypoint.sh: Configuration complete; ready for start up 2021/12/28 03:59:20 [notice] 1#1: using the "epoll" event method 2021/12/28 03:59:20 [notice] 1#1: nginx/1.21.4 2021/12/28 03:59:20 [notice] 1#1: built by gcc 10.2.1 20210110 (Debian 10.2.1-6) 2021/12/28 03:59:20 [notice] 1#1: OS: Linux 4.18.0-305.3.1.el8.x86_64 2021/12/28 03:59:20 [notice] 1#1: getrlimit(RLIMIT_NOFILE): 1048576:1048576 2021/12/28 03:59:20 [notice] 1#1: start worker processes 2021/12/28 03:59:20 [notice] 1#1: start worker process 24 2021/12/28 03:59:20 [notice] 1#1: start worker process 25 172.17.0.1 - - [28/Dec/2021:03:59:36 +0000] "GET / HTTP/1.1" 200 615 "-" "curl/7.61.1" "-" 2021/12/28 05:09:38 [notice] 1#1: signal 3 (SIGQUIT) received, shutting down 2021/12/28 05:09:38 [notice] 25#25: gracefully shutting down 2021/12/28 05:09:38 [notice] 25#25: exiting 2021/12/28 05:09:38 [notice] 25#25: exit 2021/12/28 05:09:38 [notice] 24#24: gracefully shutting down 2021/12/28 05:09:38 [notice] 24#24: exiting 2021/12/28 05:09:38 [notice] 24#24: exit 2021/12/28 05:09:38 [notice] 1#1: signal 17 (SIGCHLD) received from 24 2021/12/28 05:09:38 [notice] 1#1: worker process 24 exited with code 0 2021/12/28 05:09:38 [notice] 1#1: signal 29 (SIGIO) received 2021/12/28 05:09:38 [notice] 1#1: signal 17 (SIGCHLD) received from 25 2021/12/28 05:09:38 [notice] 1#1: worker process 25 exited with code 0 2021/12/28 05:09:38 [notice] 1#1: exit /docker-entrypoint.sh: /docker-entrypoint.d/ is not empty, will attempt to perform configuration /docker-entrypoint.sh: Looking for shell scripts in /docker-entrypoint.d/ /docker-entrypoint.sh: Launching /docker-entrypoint.d/10-listen-on-ipv6-by-default.sh 10-listen-on-ipv6-by-default.sh: info: IPv6 listen already enabled /docker-entrypoint.sh: Launching /docker-entrypoint.d/20-envsubst-on-templates.sh /docker-entrypoint.sh: Launching /docker-entrypoint.d/30-tune-worker-processes.sh /docker-entrypoint.sh: Configuration complete; ready for start up 2021/12/28 05:09:38 [notice] 1#1: using the "epoll" event method 2021/12/28 05:09:38 [notice] 1#1: nginx/1.21.4 2021/12/28 05:09:38 [notice] 1#1: built by gcc 10.2.1 20210110 (Debian 10.2.1-6) 2021/12/28 05:09:38 [notice] 1#1: OS: Linux 4.18.0-305.3.1.el8.x86_64 2021/12/28 05:09:38 [notice] 1#1: getrlimit(RLIMIT_NOFILE): 1048576:1048576 2021/12/28 05:09:38 [notice] 1#1: start worker processes 2021/12/28 05:09:38 [notice] 1#1: start worker process 24 2021/12/28 05:09:38 [notice] 1#1: start worker process 25

自动战斗也是一种享受,电影级的武侠游戏仅此一家武侠游戏免不了做任务,玩家的等级装备武学等等都需要不断地做任务才能获得成长奖励,每个人都有一个疲劳期,不断的做任务也确实会身心俱疲,于是自动战斗便上线了,满足玩家奖励的同时,也能节手游原神成为有史以来成本最高游戏据数字分析平台SensorTower数据显示,2022年上半年原神手游吸金1。4亿美元(约9。42亿元人民币),稳坐出海手游美国收入榜首。而且原神自推出以来,每年总收入超过30亿美小米一加三星摩托齐齐官宣,这些新机让我看呆了一加三星摩托罗拉小米齐上阵数码新品开启狂轰滥炸模式上周延期的一加和摩托罗拉发布会今日官宣定在本周,这几天的新品发布会密集的有点恐怖,将开启狂轰滥炸模式。一加手机官方今日在微博宣布将财经早餐2022。08。12星期五中汽协7月,新能源汽车产销分别完成61。7万辆和59。3万辆,同比均增长1。2倍。其中纯电动汽车产销分别完成47。2万辆和45。7万辆,同比分别增长1倍和1。1倍17月,新能源汽车太阳毁灭前地球可以奔向比邻星,比邻星不会毁灭吗?太阳释放着光和热,她是地球上生命得以存在的能量保障。太阳的能量来自氢核聚变,目前太阳每秒钟大约要消耗400万吨氢。按照恒星的演化规律,大约50亿年后太阳会膨胀为一颗红巨星,人类生活从太空看地球!法国宇航员在空间站的六个月去年,法国宇航员托马斯佩斯凯特(ThomasPesquet)在国际空间站上度过了六个月,他对地球的看法既令人震惊又令人叹为观止。长时间的双脚离开坚实的地面,使他对我们这个星球有了独作者解读未来气候变暖将增加热夜的疾病负担文章解读研究背景近年来,夏季高温事件频发,对各地居民健康的影响日益凸显1。研究表明,在气候变化场景下,预计未来高温将会进一步影响全球健康2。然而,相关的高温健康风险研究只考虑了日均中秋节给父母换手机,这3款体验好性能稳定的手机,能用五年转眼间下个月的中秋节马上就要到了,话说中秋佳节,不少朋友都在计划着今年中秋节应该给爸爸妈妈准备什么礼物,其实手机来说确实是一个不错的选择,其实适合父母的手机基本上都要满足体验不错性国乒男队近期成绩不稳定引热议!马龙会打到巴黎奥运会吗国乒男队近期成绩不太稳定引发外界热议,最近一个月进行的四战挑战赛争夺中,参加比赛的每一名球员都有输球的经历,连国乒大满贯得主马龙也没能幸免于难,他在布达佩斯球星赛和冠军赛上先后爆冷知名早教闭店跑路,卷走家长巨额血汗钱,这样的日托还能去吗?文陈银近日,早教第一股美吉姆(002621)站上了风口浪尖,上海多家门店都出现了关店现象,家长们纷纷联系不上工作人员。对此美吉姆的公关人员回应称,上海门店的关闭都是因为临时性的,后新机尝鲜,你见过这样的可以触控的一体机电脑吗?目前,电脑的普及度越来越高,已经成为家家户户必备的电子产品了,就连我上小学的小侄儿都知道用电脑玩游戏。市面上电脑品牌不胜枚举,电脑产品也是琳琅满目,如果说有哪一款非常吸引眼球,那就
花点心思,走进大自然的氧吧,与春天撞个满怀春,不止是个季节,它还代表着温暖生长,代表着对某人或某事的期盼。春天是个美好的季节,草长莺飞,春意融融,万物萌芽生长,各种花草树木早已按捺不住发芽展叶开花。初春的风,唤醒了田间的黄澳洲2月21日起国境全面开放!打算留学澳洲,先了解下澳洲八大澳洲2月21日起国境全面开放,有效签证皆可入境!打算留学澳洲,先了解下澳洲八大澳大利亚历经了持续将近2年的国境封锁,于去年底陆续开放边境,根据现行政策,澳洲公民和永久居民及其家属持春风十里不如你,当梅花与汉服相遇春节假期刚过一场大雪就从天而降豆腐村中银装素裹万物都染上了白色只有一株株梅花树傲然挺立在飘雪中一朵朵亮丽的梅花点缀在白茫茫的世界里显得格外娇艳大雪过后,雪还未完全溶化梅花便迫不及待植物园卧佛寺腊梅已盛开,最佳观赏期到啦,附拍照攻略北京最佳腊梅观赏地,说是植物园卧佛寺,恐怕每人会持反对意见。这里的腊梅树特别多,花期长。最早开放的腊梅从阳历2月初开始,不同品种陆续开放,一直持续到3月。腊梅属于早春的花,开花时气赏樱花的季节,一起来认识35个樱花品种三月樱花烂漫的季节,春回大地万物复苏。妩媚娇艳的樱花也竞相开放。一树树盛放得花团锦簇如云似霞的。樱花是蔷薇科,樱属数种落叶乔木植物的总称。全世界有原生樱花约150种,中国有50多种梅花香自苦寒来蜡梅花开动京城王德玉文图片网络近日,京都各大公园的腊梅花都开了,吸引了不少的游客和摄影爱好者纷纷前往。为初春略显冷清的公园增添了不少热闹的场景。蜡梅又称腊梅,金黄的花瓣似蜡,在岁首甜蜜开年浪漫一生情人节ValentinesDay与你有关皆是浪漫浪漫时刻雅林茶轩不同语言深表爱意浪漫时刻因你而美爱是需要在特定的日子制造一点仪式感雅林茶轩酒店为您的TA提供最好的体验WARMMOM想象之中的一次旅行思旅想象一次旅行,从残冬去往春天的一次旅行,一路向南,天气会渐渐地热,我也会甩去厚厚的衣服,人渐渐地变得轻盈起来。你会在尽头等我,然后将带我走入一座古城,我愿意想象那里是阳光普照的旅行新疆,都爱吃新疆羊肉,新疆羊肉都有哪些做法呢新疆美食以羊肉为特色,新疆人民也是对羊肉进行了各种创造,小编每年都要去新疆阿克苏库尔勒还有伊犁等地出差,对于新疆羊肉也是爱不释手,今天在这里呢就给大家介绍一下新疆羊肉的几种主流吃法非常适合自驾游的十款SUV,不仅空间大动力足,而且脱困能力强退休后带着家人自驾游,一边驾驶一边享受路上的美景。如果你要进藏,那么并不是所有车子都适合的,遇到路况不好的时候还很容易抛锚在路上。所以,自驾游很有必要拥有一辆越野能力强的四驱SUV俗话说树挪死人挪活,可有一种树,就喜欢四处旅行俗话说树挪死人挪活,大家都知道树木不能轻易动土外迁,否则容易枯死。但是有一种树可以自己走路,它会不安分地爬出土壤,四处走走。热衷于搬家的树在南美洲,有一种柏树叫作卷柏。它生活得非常