我们有一个 Jenkins CI 服务器,在 Ubuntu 上运行。我可以以 root 身份登录,但 jenkins 用户正在运行管道。作为管道的一部分,我想将图像推送到数字海洋注册表。我可以
我们有一个在 Ubuntu 上运行的 Jenkins CI 服务器。我可以以 身份登录 root
,但 jenkins
用户正在运行管道。作为管道的一部分,我想将图像推送到数字海洋注册表。
如果我以用户身份运行,我可以成功验证、登录和推送 root
,但我无法让它以 jenkins
用户身份工作(作为管道的一部分)。 sudo -u jenkins doctl auth init
例如,如果我调用,它想要写入 /root/.config
文件,这当然是不允许的,因为存在权限问题。
无论如何,我希望能够 doctl
连接到 jenkins
用户而不是 root
用户运行。要么安装 doctl
命令给 jenkins
用户,要么强制使用用户的配置文件/文件夹 jenkins
.
(您可能已经意识到,我并不是一名 Linux 专家。)
我有下表:mysql> SHOW VARIABLES LIKE 'char%';+-----------------------------+----------------------------+| Variable_name | Value |+-------------------...
我有下表:
mysql> SHOW VARIABLES LIKE 'char%';
+--------------------------+----------------------------+
| Variable_name | Value |
+--------------------------+----------------------------+
| character_set_client | utf8 |
| character_set_connection | utf8 |
| character_set_database | latin1 |
| character_set_filesystem | binary |
| character_set_results | utf8 |
| character_set_server | latin1 |
| character_set_system | utf8 |
| character_sets_dir | /usr/share/mysql/charsets/ |
+--------------------------+----------------------------+
8 rows in set (0.01 sec)
我使用 JDBC 驱动程序。必须支持 utf8 的文本字段的表的创建方式如下:
jdbcTemplate.execute(
"CREATE TABLE IF NOT EXISTS users"+
"(id BIGINT NOT NULL AUTO_INCREMENT,"+
"name VARCHAR(45),"+
"................."+
"ENGINE=InnoDB DEFAULT CHARSET=utf8mb4");
在本地机器上,一切正常。但在 Ubuntu 服务器上,我得到的是 \'?????\',而不是 UTF-8 中的正常名称。如何修复它?该应用程序通过 Nginx 运行。也许这就是问题所在?