{"id":384131,"date":"2023-08-30T04:09:57","date_gmt":"2023-08-30T03:09:57","guid":{"rendered":"https:\/\/blog.jetbrains.com\/?post_type=teamcity&#038;p=384131"},"modified":"2023-09-04T17:34:38","modified_gmt":"2023-09-04T16:34:38","slug":"introducing-agent-terminals","status":"publish","type":"teamcity","link":"https:\/\/blog.jetbrains.com\/zh-hans\/teamcity\/2023\/08\/introducing-agent-terminals\/","title":{"rendered":"\u5728 TeamCity \u4e2d\u63a8\u51fa\u4ee3\u7406\u7ec8\u7aef"},"content":{"rendered":"\n<p>\u6211\u4eec\u5728 TeamCity \u4e2d\u63a8\u51fa<strong>\u4ee3\u7406\u7ec8\u7aef<\/strong>\uff1a\u8fd9\u9879\u65b0\u529f\u80fd\u4e13\u95e8\u7528\u4e8e\u5e2e\u52a9\u60a8\u8f7b\u677e\u67e5\u770b\u4ee3\u7406\u4e0a\u7684\u7cfb\u7edf\u65e5\u5fd7\u3001\u68c0\u67e5\u5df2\u5b89\u88c5\u7684\u8f6f\u4ef6\uff0c\u4ee5\u53ca\u76f4\u63a5\u4ece TeamCity \u7684 UI \u8c03\u8bd5\u7279\u5b9a\u4ee3\u7406\u95ee\u9898\u3002<\/p>\n\n\n\n<p>\u4e0b\u6587\u5c06\u8be6\u7ec6\u4ecb\u7ecd\u8fd9\u9879\u65b0\u529f\u80fd\u3002<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">\u4ec0\u4e48\u662f\u4ee3\u7406\u7ec8\u7aef\uff1f<\/h2>\n\n\n\n<p>\u4ece 2023.05 \u5f00\u59cb\uff0cTeamCity \u63d0\u4f9b\u4e86\u4e00\u79cd\u65b9\u4fbf\u5feb\u6377\u7684\u65b9\u5f0f\uff0c\u4f9b\u7528\u6237\u4ece TeamCity UI \u6253\u5f00\u8fdc\u7a0b\u7ec8\u7aef\u6765\u76f4\u63a5\u8bbf\u95ee\u4ee3\u7406\u673a\u5668\u3002 \u5b83\u5728 Linux\u3001Windows\uff08\u4f7f\u7528 PowerShell\uff09\u548c macOS \u5747\u53d7\u652f\u6301\u3002&nbsp;<\/p>\n\n\n\n<p>\u501f\u52a9\u4ee3\u7406\u7ec8\u7aef\uff0c\u60a8\u53ef\u4ee5\u8c03\u67e5\u4ee3\u7406\u4e0a\u5230\u5e95\u53d1\u751f\u4e86\u4ec0\u4e48\u3002<\/p>\n\n\n\n<figure class=\"wp-block-image\"><img decoding=\"async\" loading=\"lazy\" width=\"1999\" height=\"1165\" src=\"https:\/\/blog.jetbrains.com\/wp-content\/uploads\/2023\/07\/agent-terminals-in-teamcity.png\" alt=\"\" class=\"wp-image-372810\"\/><\/figure>\n\n\n\n<h2 class=\"wp-block-heading\">\u4ee3\u7406\u7ec8\u7aef\u80fd\u63d0\u4f9b\u4ec0\u4e48\u5e2e\u52a9\uff1f<\/h2>\n\n\n\n<p>\u5728\u8bb8\u591a\u7528\u4f8b\u4e2d\uff0c\u76f4\u63a5\u901a\u8fc7 UI \u6253\u5f00\u4ee3\u7406\u4e0a\u7684\u7ec8\u7aef\u90fd\u4f1a\u6d3e\u4e0a\u7528\u573a\uff0c\u7279\u522b\u662f\u5728\u914d\u7f6e\u6784\u5efa\u65f6\u9700\u8981\u68c0\u67e5\u4ee3\u7406\u73af\u5883\u6216\u9700\u8981\u8c03\u8bd5\u5931\u8d25\u6784\u5efa\u7684\u60c5\u51b5\u3002<\/p>\n\n\n\n<h3 class=\"wp-block-heading\">\u68c0\u67e5\u4ee3\u7406\u73af\u5883<\/h3>\n\n\n\n<p>\u5047\u8bbe\u60a8\u6b63\u5728\u914d\u7f6e\u6784\u5efa\uff0c\u5e76\u4e14\u4e0d\u786e\u5b9a\u4ee3\u7406\u4e0a\u5b89\u88c5\u7684\u73af\u5883\u3002 \u5148\u524d\uff0c\u60a8\u9700\u8981\u5728\u8ba1\u7b97\u673a\u4e0a\u542f\u52a8\u7ec8\u7aef\uff0c\u914d\u7f6e SSH\uff0c\u5e76\u5f04\u6e05\u695a\u5982\u4f55\u8bbf\u95ee\u786e\u5207\u7684\u4ee3\u7406\u3002<\/p>\n\n\n\n<p>\u73b0\u5728\uff0c\u60a8\u53ea\u9700\u8981\u6253\u5f00\u7ec8\u7aef\uff0c\u76f4\u63a5\u8bbf\u95ee\u76f8\u5173\u4ee3\u7406\u5e76\u68c0\u67e5\u4ee3\u7406\u73af\u5883\u3002 \u8fd9\u9879\u529f\u80fd\u53ef\u4ee5\u4e3a\u60a8\u8282\u7701\u5927\u91cf\u65f6\u95f4\u548c\u7cbe\u529b\u3002<\/p>\n\n\n\n<figure class=\"wp-block-image\"><img decoding=\"async\" src=\"https:\/\/blog.jetbrains.com\/wp-content\/uploads\/2023\/07\/agent-terminals-in-teamcity-preview.png\" alt=\"\"\/><\/figure>\n\n\n\n<h3 class=\"wp-block-heading\">\u914d\u7f6e\u6784\u5efa\u548c\u8c03\u67e5\u6784\u5efa\u5931\u8d25<\/h3>\n\n\n\n<p><a href=\"https:\/\/www.jetbrains.com.cn\/help\/teamcity\/creating-and-editing-build-configurations.html\" target=\"_blank\" rel=\"noopener\">\u521b\u5efa\u548c\u7f16\u8f91\u6784\u5efa\u914d\u7f6e<\/a>\u9700\u8981\u8bb8\u591a\u6b65\u9aa4\uff0c\u53ef\u80fd\u76f8\u5f53\u8017\u65f6\u3002 \u5148\u662f\u914d\u7f6e\u7b2c\u4e00\u4e2a\u547d\u4ee4\uff0c\u8fd0\u884c\u547d\u4ee4\uff0c\u68c0\u67e5\u7ed3\u679c\uff0c\u7136\u540e\u518d\u8fd0\u884c\u7b2c\u4e8c\u4e2a\u547d\u4ee4\uff0c\u68c0\u67e5\u7ed3\u679c\uff0c\u5982\u6b64\u5f80\u590d\u3002&nbsp;<br>\u5f53\u547d\u4ee4\u672a\u8fd0\u884c\u65f6\uff0c\u8c03\u8bd5\u95ee\u9898\u7684\u6839\u672c\u539f\u56e0\u53ef\u80fd\u975e\u5e38\u56f0\u96be\u3002 \u501f\u52a9\u4ee3\u7406\u7ec8\u7aef\uff0c\u60a8\u53ef\u4ee5\u68c0\u67e5\u4ee3\u7406\u4e0a\u7684\u65e5\u5fd7\u5e76\u67e5\u770b\u5bfc\u81f4\u6784\u5efa\u5931\u8d25\u7684\u539f\u56e0\uff0c\u8f7b\u677e<a href=\"https:\/\/www.jetbrains.com.cn\/help\/teamcity\/install-and-start-teamcity-agents.html#Debug+Agents+Remotely\" target=\"_blank\" rel=\"noopener\">\u8fdc\u7a0b\u8c03\u8bd5\u4ee3\u7406<\/a>\u3002<\/p>\n\n\n\n<figure class=\"wp-block-video\"><video src=\"https:\/\/blog.jetbrains.com\/wp-content\/uploads\/2023\/07\/agent-terminals.mp4\" controls=\"controls\" width=\"720\" height=\"360\"><\/video><\/figure>\n\n\n\n<p>\u4ee3\u7406\u7ec8\u7aef\u7279\u522b\u9002\u5408\u4e00\u6b21\u6027\u4e91\u4ee3\u7406\uff0c\u8fd9\u79cd\u4ee3\u7406\u662f TeamCity Cloud \u4e2d\u7684\u9ed8\u8ba4\u7c7b\u578b\u3002 \u901a\u8fc7\u7ec8\u7aef\u8bbf\u95ee\u4e91\u4ee3\u7406\u540e\uff0c\u5b83\u4e0d\u4f1a\u5173\u95ed\uff0c\u60a8\u5c06\u53ef\u4ee5\u8c03\u67e5\u65e5\u5fd7\u6216\u4efb\u4f55\u5176\u4ed6\u95ee\u9898\u3002<\/p>\n\n\n\n<h3 class=\"wp-block-heading\">\u7ef4\u62a4\u4ee3\u7406<\/h3>\n\n\n\n<p>\u66f4\u65b0\u4e00\u4e2a\u4ee3\u7406\u4e0a\u7684\u73af\u5883\u65f6\uff0c\u4ee3\u7406\u7ec8\u7aef\u4e5f\u5f88\u6709\u7528\u3002 \u60a8\u53ef\u4ee5\u76f4\u63a5\u4ece TeamCity UI \u901a\u8fc7\u7ec8\u7aef\u8f7b\u677e\u767b\u5f55\u4ee3\u7406\uff0c\u800c\u4e0d\u5fc5\u4ec5\u4ec5\u4e3a\u4e00\u4e2a\u4ee3\u7406\u542f\u52a8 SSH\u3002&nbsp;<\/p>\n\n\n\n<h3 class=\"wp-block-heading\">\u52a0\u5f3a\u5b89\u5168\u6027<\/h3>\n\n\n\n<p>\u4ee3\u7406\u7ec8\u7aef\u63d0\u4f9b\u4e86\u66f4\u9ad8\u7684\u5b89\u5168\u900f\u660e\u5ea6\u3002 \u5f97\u76ca\u4e8e TeamCity\uff0c\u60a8\u53ef\u4ee5\u7cbe\u7ec6\u63a7\u5236\u6743\u9650\uff0c\u51b3\u5b9a\u8c01\u6709\u6743\u8bbf\u95ee\u4ec0\u4e48\u5185\u5bb9\u3002 \u60a8\u53ef\u4ee5\u5c06\u4ee3\u7406\u7ec8\u7aef\u8bbf\u95ee\u6743\u9650\u9650\u5236\u4e3a\u4ec5\u6709\u5b9e\u9645\u9700\u8981\u7684\u7528\u6237\u3002<\/p>\n\n\n\n<div style=\"border-radius: 5px; background-color: #def1df; margin-bottom: 40px; padding: 15px; margin-right: 0%; font-size: 20px; line-height: 30px; text-align: justify; min-height: 40px;\">\n<p><span style=\"font-weight: 400;\">&#x2b50;&#xfe0f;\u67e5\u770b\u6211\u4eec\u7684\u767d\u76ae\u4e66<\/span><i><span style=\"font-weight: 400;\">\u201c<a href=\"https:\/\/www.jetbrains.com\/lp\/teamcity-cicd-security-whitepaper\/\" target=\"_blank\" rel=\"noopener\">9 Ways to Prevent a Supply Chain Attack on Your CI\/CD Server<\/a>\u201d<\/span><\/i><span style=\"font-weight: 400;\">\uff0c\u83b7\u53d6\u66f4\u591a\u5b89\u5168\u63d0\u793a\u3002<\/span><\/p>\n<\/div>\n\n\n\n<h2 class=\"wp-block-heading\">\u8c01\u5c06\u4ece\u4ee3\u7406\u7ec8\u7aef\u4e2d\u53d7\u76ca\uff1f<\/h2>\n\n\n\n<p>\u4efb\u610f\u4ee3\u7406\u673a\u5668\u7684\u4e00\u952e\u5f0f\u8bbf\u95ee\u529f\u80fd\u975e\u5e38\u5f3a\u5927\uff0c\u53ef\u4f9b\u4efb\u4f55\u6709\u9700\u8981\u7684\u4eba\u4f7f\u7528\u3002 \u4f8b\u5982\uff0c\u8d1f\u8d23\u642d\u5efa\u6784\u5efa\u914d\u7f6e\u5e76\u786e\u4fdd\u5176\u6b63\u786e\u8fd0\u884c\u7684\u7ba1\u7406\u5458\uff0c \u6216\u8005\u9700\u8981\u8c03\u67e5\u6784\u5efa\u5931\u8d25\u539f\u56e0\u7684\u5f00\u53d1\u8005\u3001QA \u6216 DevOps \u5de5\u7a0b\u5e08\u3002&nbsp;<\/p>\n\n\n\n<p>\u65e0\u8bba\u662f\u672c\u5730\u90e8\u7f72\u3001\u865a\u62df\u4ee3\u7406\u673a\u5668\u8fd8\u662f\u4e91\u4ee3\u7406\uff0c\u6240\u6709\u7c7b\u578b\u7684\u4ee3\u7406\u90fd\u53ef\u4ee5\u8bbf\u95ee\uff0c\u4e3a\u4e0d\u540c\u7684\u7528\u6237\u63d0\u4f9b\u5927\u91cf\u4ef7\u503c\u3002<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">\u60a8\u7684\u60f3\u6cd5<\/h2>\n\n\n\n<p>\u60a8\u8ba4\u4e3a\u81ea\u5df1\u7684\u7ec4\u7ec7\u53ef\u4ee5\u4ece\u4ee3\u7406\u7ec8\u7aef\u4e2d\u53d7\u76ca\u5417\uff1f \u8bf7\u5728\u4e0b\u65b9\u8bc4\u8bba\u533a\u4e2d\u4e0e\u6211\u4eec\u5206\u4eab\u60a8\u7684\u60f3\u6cd5\uff01<\/p>\n\n\n\n<p>\u5982\u679c\u60a8\u6709\u4efb\u4f55\u95ee\u9898\u6216\u5efa\u8bae\uff0c\u8bf7\u968f\u65f6<a href=\"https:\/\/www.jetbrains.com\/teamcity\/get-in-touch\/\" target=\"_blank\" rel=\"noopener\">\u8054\u7cfb\u6211\u4eec<\/a>\u3002 \u6211\u4eec\u975e\u5e38\u4e50\u610f\u542c\u53d6\u60a8\u7684\u53cd\u9988\u3002<\/p>\n\n\n\n<p><\/p>\n\n\n\n<p>\u672c\u535a\u6587\u82f1\u6587\u539f\u4f5c\u8005\uff1a<\/p>\n\n\n    <div class=\"about-author \">\n        <div class=\"about-author__box\">\n            <div class=\"row\">\n                <div class=\"about-author__box-img\">\n                    <img decoding=\"async\" src=\"https:\/\/secure.gravatar.com\/avatar\/?s=200&#038;r=g\" width=\"200\" height=\"200\" alt=\"\" loading=\"lazy\"  class=\"avatar avatar-200 wp-user-avatar wp-user-avatar-200 photo avatar-default\">\n                <\/div>\n                <div class=\"about-author__box-text\">\n                                                        <\/div>\n            <\/div>\n        <\/div>\n    <\/div>\n","protected":false},"author":1297,"featured_media":372844,"comment_status":"closed","ping_status":"closed","template":"","categories":[89],"tags":[76],"cross-post-tag":[],"acf":[],"_links":{"self":[{"href":"https:\/\/blog.jetbrains.com\/zh-hans\/wp-json\/wp\/v2\/teamcity\/384131"}],"collection":[{"href":"https:\/\/blog.jetbrains.com\/zh-hans\/wp-json\/wp\/v2\/teamcity"}],"about":[{"href":"https:\/\/blog.jetbrains.com\/zh-hans\/wp-json\/wp\/v2\/types\/teamcity"}],"author":[{"embeddable":true,"href":"https:\/\/blog.jetbrains.com\/zh-hans\/wp-json\/wp\/v2\/users\/1297"}],"replies":[{"embeddable":true,"href":"https:\/\/blog.jetbrains.com\/zh-hans\/wp-json\/wp\/v2\/comments?post=384131"}],"version-history":[{"count":8,"href":"https:\/\/blog.jetbrains.com\/zh-hans\/wp-json\/wp\/v2\/teamcity\/384131\/revisions"}],"predecessor-version":[{"id":384139,"href":"https:\/\/blog.jetbrains.com\/zh-hans\/wp-json\/wp\/v2\/teamcity\/384131\/revisions\/384139"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/blog.jetbrains.com\/zh-hans\/wp-json\/wp\/v2\/media\/372844"}],"wp:attachment":[{"href":"https:\/\/blog.jetbrains.com\/zh-hans\/wp-json\/wp\/v2\/media?parent=384131"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/blog.jetbrains.com\/zh-hans\/wp-json\/wp\/v2\/categories?post=384131"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/blog.jetbrains.com\/zh-hans\/wp-json\/wp\/v2\/tags?post=384131"},{"taxonomy":"cross-post-tag","embeddable":true,"href":"https:\/\/blog.jetbrains.com\/zh-hans\/wp-json\/wp\/v2\/cross-post-tag?post=384131"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}